{
	"targets": {
	  "SafeDecimalMath": {
		"name": "SafeDecimalMath",
		"address": "0x1224bD772D3C6EAaE60732E010ff07fA19b340e7",
		"source": "SafeDecimalMath"
	  },
	  "Math": {
		"name": "Math",
		"address": "0xee5cFeEA2caC5F3A13DB1193c211C7bfA5c03dF0",
		"source": "Math"
	  },
	  "SystemSettingsLib": {
		"name": "SystemSettingsLib",
		"address": "0xD5de6F0AB8FB557e874f31A4424Da78AD777e86b",
		"source": "SystemSettingsLib"
	  },
	  "SignedSafeDecimalMath": {
		"name": "SignedSafeDecimalMath",
		"address": "0xbFe5dA86981e2dB461bd85D31795aD233748EE32",
		"source": "SignedSafeDecimalMath"
	  },
	  "AddressResolver": {
		"name": "AddressResolver",
		"address": "0xB6f10fB84e6DeD488D7a0063aefCE391B2e92cDa",
		"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": "0x7F83C4fe6934daF45436f438F782041363757620",
		"source": "FlexibleStorage"
	  },
	  "SystemSettings": {
		"name": "SystemSettings",
		"address": "0x9a375aa777aA1d3B33A98C79060B4e2d29073405",
		"source": "SystemSettings"
	  },
	  "SystemStatus": {
		"name": "SystemStatus",
		"address": "0x3d8DE73bd6e48FBcBe545AbdD5401ABa9FFa4228",
		"source": "SystemStatus"
	  },
	  "ExchangeRates": {
		"name": "ExchangeRates",
		"address": "0x976D48529830a4f53F80C1B59f2762C1f72Cd3ff",
		"source": "ExchangeRatesWithDexPricing"
	  },
	  "RewardEscrow": {
		"name": "RewardEscrow",
		"address": "0xd435461f7521b7647D2ad39F8DD4903C2e7f407d",
		"source": "RewardEscrow"
	  },
	  "RewardEscrowV2": {
		"name": "RewardEscrowV2",
		"address": "0x262f77c7315B119FC0033131D1838C4DA3BD1668",
		"source": "RewardEscrowV2"
	  },
	  "RewardEscrowV2Manager": {
		"name": "RewardEscrowV2Manager",
		"address": "0x5Be18F942C8D7B67FcF07DB5fe58019e70422eB9",
		"source": "RewardEscrowV2Manager"
	  },
	  "SynthetixEscrow": {
		"name": "SynthetixEscrow",
		"address": "0xC6a2a938F8ae3dE8Ee5e26938098Acb961CBCdA8",
		"source": "SynthetixEscrow"
	  },
	  "SynthetixState": {
		"name": "SynthetixState",
		"address": "0xcbcFB6E2d8517DB83BedB30f79D5197607207A2c",
		"source": "SynthetixState"
	  },
	  "SynthetixDebtShare": {
		"name": "SynthetixDebtShare",
		"address": "0x21FFC3e3C6a80E67fDa819Eb1D9aE60C388Ec9d7",
		"source": "SynthetixDebtShare"
	  },
	  "ProxyFeePool": {
		"name": "ProxyFeePool",
		"address": "0xa130233810da4D971518df0C17Ba7614D5A98140",
		"source": "Proxy"
	  },
	  "FeePool": {
		"name": "FeePool",
		"address": "0x021f0044DaDef925448D6bEe51150FfEEB31bf23",
		"source": "FeePool"
	  },
	  "FeePoolState": {
		"name": "FeePoolState",
		"address": "0x7F4a3D2d0e45ECD301Be8a181c3911677c353C85",
		"source": "FeePoolState"
	  },
	  "DelegateApprovalsEternalStorage": {
		"name": "DelegateApprovalsEternalStorage",
		"address": "0x863F88Fb51848C91bbb9bebbCbE52ECf2f80d6d1",
		"source": "EternalStorage"
	  },
	  "DelegateApprovals": {
		"name": "DelegateApprovals",
		"address": "0x62Cf4fe3e5Db957DbD016Df519A3a09CFe6F1D0c",
		"source": "DelegateApprovals"
	  },
	  "Liquidator": {
		"name": "Liquidator",
		"address": "0x97E3563ddd7080f7c2DCbcfa0aCBFA5835ccb573",
		"source": "Liquidator"
	  },
	  "LiquidatorRewards": {
		"name": "LiquidatorRewards",
		"address": "0x5457eAca89aa05fB603f1191F7C4cf0A8B555F2e",
		"source": "LiquidatorRewards"
	  },
	  "LiquidatorRewardsManager": {
		"name": "LiquidatorRewardsManager",
		"address": "0xC498C9C1a33c30835231ED43Aa3ED50d9BC11017",
		"source": "LiquidatorRewardsManager"
	  },
	  "FeePoolEternalStorage": {
		"name": "FeePoolEternalStorage",
		"address": "0x89bCa2263F6D40ebf9b13dda6C3757509b6111C3",
		"source": "FeePoolEternalStorage"
	  },
	  "RewardsDistribution": {
		"name": "RewardsDistribution",
		"address": "0xc4858f2B77e78331B30EDA6a1f126028E628f88b",
		"source": "RewardsDistribution"
	  },
	  "TokenStateSynthetix": {
		"name": "TokenStateSynthetix",
		"address": "0x51c8a8E3307E72bF9B65f044051814426f934e9C",
		"source": "LegacyTokenState"
	  },
	  "ProxySynthetix": {
		"name": "ProxySynthetix",
		"address": "0x75FfA5fcb16B1812451bE05c5Eb393139c93f7C5",
		"source": "Synthetix"
	  },
	  "Synthetix": {
		"name": "Synthetix",
		"address": "0x75FfA5fcb16B1812451bE05c5Eb393139c93f7C5",
		"source": "Synthetix"
	  },
	  "DebtCache": {
		"name": "DebtCache",
		"address": "0xe143E07a1400CD49c9953449fEf820135566ae98",
		"source": "DebtCache"
	  },
	  "Exchanger": {
		"name": "Exchanger",
		"address": "0xd19084449685a7A157b3E579Ae9C040c2426B78f",
		"source": "ExchangerWithFeeRecAlternatives"
	  },
	  "ExchangeCircuitBreaker": {
		"name": "ExchangeCircuitBreaker",
		"address": "0x6DE41ACE713046fF55c937c552881457312d3833",
		"source": "ExchangeCircuitBreaker"
	  },
	  "VirtualSynthMastercopy": {
		"name": "VirtualSynthMastercopy",
		"address": "0x381f09C9CF5b5Be0af7F66167349343AFCD8E0aF",
		"source": "VirtualSynthMastercopy"
	  },
	  "ExchangeState": {
		"name": "ExchangeState",
		"address": "0x13Fe75DA6b14447490302323be32917c5A8411A9",
		"source": "ExchangeState"
	  },
	  "Issuer": {
		"name": "Issuer",
		"address": "0xD8837F00cE86778dd50Ad006520047E481c5068d",
		"source": "Issuer"
	  },
	  "IssuedSynthAggregator": {
		"name": "IssuedSynthAggregator",
		"address": "0x69bBb07Cee2501c995F357beC0BbA230afeb3B1a",
		"source": "IssuedSynthAggregator"
	  },
	  "TradingRewards": {
		"name": "TradingRewards",
		"address": "0x445E2f0895BE6E0A8545DfdC07167E17c39CEC20",
		"source": "TradingRewards"
	  },
	  "SupplySchedule": {
		"name": "SupplySchedule",
		"address": "0x501709B0829a7e2456819892af8483f623C7115f",
		"source": "SupplySchedule"
	  },
	  "EscrowChecker": {
		"name": "EscrowChecker",
		"address": "0x3C2dd2989f600b9bCd8F0Ce5eC10154d789B9250",
		"source": "EscrowChecker"
	  },
	  "SynthetixBridgeToOptimism": {
		"name": "SynthetixBridgeToOptimism",
		"address": "0x963ee40595bFf49d66B4F3eCb7Ab9Ba318874B27",
		"source": "SynthetixBridgeToOptimism"
	  },
	  "SynthetixBridgeEscrow": {
		"name": "SynthetixBridgeEscrow",
		"address": "0x653Bc9F47Fb2C067004f001Bd528457D779c7109",
		"source": "SynthetixBridgeEscrow"
	  },
	  "OwnerRelayOnEthereum": {
		"name": "OwnerRelayOnEthereum",
		"address": "0xFdB31235cDFe68bfFD1d687AC3A2b31E80eacf0d",
		"source": "OwnerRelayOnEthereum"
	  },
	  "SynthRedeemer": {
		"name": "SynthRedeemer",
		"address": "0xb78cb18Aab8ccAB7bF27e4B668536Ae01faF8c72",
		"source": "SynthRedeemer"
	  },
	  "WrapperFactory": {
		"name": "WrapperFactory",
		"address": "0x87076a60815c9aa137C0844Fd8DC28F697F612D3",
		"source": "WrapperFactory"
	  },
	  "SynthrBridge": {
		"name": "SynthrBridge",
		"address": "0xDf202840bA1509c093434140F4111ceBE8D8b506",
		"source": "SynthrBridge"
	  },
	  "Depot": {
		"name": "Depot",
		"address": "0x5Cc69239109e5151F0B76037242408A6E03F79d3",
		"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": "0x8B529ad2247eC3A3dCC3E3fa4b31a428ee9D7666",
		"source": "CollateralManagerState"
	  },
	  "CollateralManager": {
		"name": "CollateralManager",
		"address": "0x5A802962ee6dAeAB3717718dd0BF2C78dF1B2d00",
		"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": "0xD50D22e9848D38e208c2b9b1A550cab3062dfeEB",
		"source": "FuturesMarketManager"
	  },
	  "SynthUtil": {
		"name": "SynthUtil",
		"address": "0xEa5d207aBA62B38b0962DD539bC57Bed364871bC",
		"source": "SynthUtil"
	  },
	  "DappMaintenance": {
		"name": "DappMaintenance",
		"address": "0x097A6EE1E23C7db6aFe9386776dE3Ca9cA7Ab17A",
		"source": "DappMaintenance"
	  },
	  "TokenStatesBTC": {
		"name": "TokenStatesBTC",
		"address": "0x9685efBa13ABA14b8381d99cf8674ad629532629",
		"source": "TokenState"
	  },
	  "SynthsBTC": {
		"name": "SynthsBTC",
		"address": "0xb6d53a2eC5133d73b1284886CC627fF862b3bA7F",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesAVAX": {
		"name": "TokenStatesAVAX",
		"address": "0xB51B8de2429155C5de885461CA6e380E3AdBC437",
		"source": "TokenState"
	  },
	  "SynthsAVAX": {
		"name": "SynthsAVAX",
		"address": "0x3a08a39edC41332BA36571e6a4F915996052f937",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesBNB": {
		"name": "TokenStatesBNB",
		"address": "0x1bdaecCa3C754bD39DCE052943626E512AC34273",
		"source": "TokenState"
	  },
	  "SynthsBNB": {
		"name": "SynthsBNB",
		"address": "0x59bb15c6E71eDa033e494fa2C4380ba03b14b2fC",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesMATIC": {
		"name": "TokenStatesMATIC",
		"address": "0x3853Fec6871988411f6700B3C549D15B7ae8F201",
		"source": "TokenState"
	  },
	  "SynthsMATIC": {
		"name": "SynthsMATIC",
		"address": "0x8B34b955e89d003DF9Aad4Ecda83D93F7A79A788",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesETH": {
		"name": "TokenStatesETH",
		"address": "0x7B277Aa6F23D3824AF31Fb7A37aa335d1Fa4d4d2",
		"source": "TokenState"
	  },
	  "SynthsETH": {
		"name": "SynthsETH",
		"address": "0x3957fB50dC5e76100aBB5FFCcEd338521445810a",
		"source": "MultiCollateralSynth"
	  },
	  "TokenStatesUSD": {
		"name": "TokenStatesUSD",
		"address": "0x2Da74B4b8A72Ada7e45c772675E1F5de4401E47A",
		"source": "TokenState"
	  },
	  "SynthsUSD": {
		"name": "SynthsUSD",
		"address": "0x9b9b0A86c1Bb914cF95337a88f953967fa8f3355",
		"source": "Synth"
	  },
	  "TokenStatesDOT": {
		"name": "TokenStatesDOT",
		"address": "0xD3D45CeEfF681Fd1dd41E4A3016AB0755b5E2E5D",
		"source": "TokenState"
	  },
	  "SynthsDOT": {
		"name": "SynthsDOT",
		"address": "0x0f44310F391252bB093AC37336117cA283B2ABf6",
		"source": "MultiCollateralSynth"
	  },
	  "SynthrAggregator": {
		"name": "SynthrAggregator",
		"address": "0x02dC40F7a2cBcDEcE46053dB7cf73C66a34A7073",
		"source": "SynthrAggregator"
	  },
	  "ExternWrappedStateToken": {
		"name": "ExternWrappedStateToken",
		"address": "0xA6418caF5e0C63F335920E3Fef1893eDb448D212",
		"source": "ExternWrappedStateToken"
	  },
	  "FuturesMarketSettings": {
		"name": "FuturesMarketSettings",
		"address": "0xc52FFE6bf0505dd67AfbE8ca0755FD5a18f48C89",
		"source": "FuturesMarketSettings"
	  },
	  "SynthManager": {
		"name": "SynthManager",
		"address": "0xF9a6e53e6a2809a1f0E7ED210BfD5969faaAB1EA",
		"source": "SynthManager"
	  },
	  "FuturesMarket": {
		"name": "FuturesMarket",
		"address": "0xA9138160a07d37D74820e4898D0f9E3BF57F308f",
		"source": "FuturesMarket"
	  },
	  "SynthrDebtShare": {
		"name": "SynthrDebtShare",
		"address": "0xE3d637fd54458746310aD52D82470681007f393e",
		"source": "SynthrDebtShare"
	  },
	  "SynthToken": {
		"name": "SynthToken",
		"address": "0xF515D11d8071F016ddf2B25BeA5D951482fd1773",
		"source": "SynthToken"
	  },
	  "SynthrSwap": {
		"name": "SynthrSwap",
		"address": "0x9BBC157F0826E83a367e62c9a8b44576AD31ab9B",
		"source": "SynthrSwap"
	  },
	  "DexAggregator": {
		"name": "DexAggregator",
		"address": "0x242E792Bf84020bed4f9A0194e07A44675a5DE07",
		"source": "DexAggregator"
	  },
	  "SynthrSwapWithDex": {
		"name": "SynthrSwapWithDex",
		"address": "0x716Dd806acdAD480136f9414F15522943330d5AE",
		"source": "SynthrSwapWithDex"
	  },
	  "DexBridge": {
		"name": "DexBridge",
		"address": "0xb31e96B9C873aeDe5d7FaBcD5f410F56f487Ce34",
		"source": "DexBridge"
	  },
	  "CircuitBreaker": {
		"name": "CircuitBreaker",
		"address": "0xDeA328E83B7041b2eBd48A45121a74F3Ec0e5D29",
		"source": "CircuitBreaker"
	  },
	  "PerpsV2ExchangeRate": {
		"name": "PerpsV2ExchangeRate",
		"address": "0x9f4711EDeeF5b6CE68a162470356F81F994CE65c",
		"source": "PerpsV2ExchangeRate"
	  },
	  "OffChainExchanger": {
		"name": "OffChainExchanger",
		"address": "0xe0F4581BD35aF5Bd4F56a327eaCEeb425d69E920",
		"source": "OffChainExchanger"
	  },
	  "ExchangeAgent": {
		"name": "ExchangeAgent",
		"address": "0xFd85FBBdf633638f03632d6d30a1B5a0a6d8C43c",
		"source": "ExchangeAgent"
	  },
	  "PerpsV2MarketStateETH": {
		"name": "PerpsV2MarketStateETH",
		"address": "0xE6383290133775cD38884475d1aa02b3a0dAC370",
		"source": "PerpsV2MarketStateETH"
	  },
	  "ProxyPerpsV2ETH": {
		"name": "ProxyPerpsV2ETH",
		"address": "0x0e5532804Dfb8652e7db629942e436B8B3147113",
		"source": "ProxyPerpsV2ETH"
	  },
	  "PerpsV2MarketETH": {
		"name": "PerpsV2MarketETH",
		"address": "0xbAF29caFf7FAD08f26E740b2f86905a4088A01Af",
		"source": "PerpsV2MarketETH"
	  },
	  "PerpsV2MarketDelayedExecutionETH": {
		"name": "PerpsV2MarketDelayedExecutionETH",
		"address": "0xa095F91384A3347790F903D4a530E593630d7466",
		"source": "PerpsV2MarketDelayedExecutionETH"
	  },
	  "PerpsV2MarketDelayedIntentETH": {
		"name": "PerpsV2MarketDelayedIntentETH",
		"address": "0xF08210C74228a59F73334432C0dDD91DA9719D43",
		"source": "PerpsV2MarketDelayedIntentETH"
	  },
	  "PerpsV2MarketLiquidateETH": {
		"name": "PerpsV2MarketLiquidateETH",
		"address": "0xe5897505C37C65491Cb5901BE98126F623B9906E",
		"source": "PerpsV2MarketLiquidateETH"
	  },
	  "PerpsV2MarketViewsETH": {
		"name": "PerpsV2MarketViewsETH",
		"address": "0x9FB022d6BB5084C665767499E6D4651c7c131d58",
		"source": "PerpsV2MarketViewsETH"
	  },
	  "PerpsV2MarketSettings": {
		"name": "PerpsV2MarketSettings",
		"address": "0x45E273796937891847F1664006900B7d4264c7e2",
		"source": "PerpsV2MarketSettings"
	  },
	  "PerpsV2MarketData": {
		"name": "PerpsV2MarketData",
		"address": "0x6c3e8E0621261a510E9F856b52d0B4122173afdb",
		"source": "PerpsV2MarketData"
	  },
	  "FuturesMarketETH": {
		"name": "FuturesMarketETH",
		"address": "0x678C18cD8E20d9336eA34b0a50c6064fA0FdBe44",
		"source": "FuturesMarketETH"
	  }
	},
	"sources": {
		"FuturesMarketETH": {
			"abi": [
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "_resolver",
							"type": "address"
						},
						{
							"internalType": "bytes32",
							"name": "_baseAsset",
							"type": "bytes32"
						},
						{
							"internalType": "bytes32",
							"name": "_marketKey",
							"type": "bytes32"
						}
					],
					"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": "int256",
							"name": "funding",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "index",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "timestamp",
							"type": "uint256"
						}
					],
					"name": "FundingRecomputed",
					"type": "event"
				},
				{
					"anonymous": false,
					"inputs": [
						{
							"indexed": true,
							"internalType": "bytes32",
							"name": "trackingCode",
							"type": "bytes32"
						},
						{
							"indexed": false,
							"internalType": "bytes32",
							"name": "baseAsset",
							"type": "bytes32"
						},
						{
							"indexed": false,
							"internalType": "bytes32",
							"name": "marketKey",
							"type": "bytes32"
						},
						{
							"indexed": false,
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "fee",
							"type": "uint256"
						}
					],
					"name": "FuturesTracking",
					"type": "event"
				},
				{
					"anonymous": false,
					"inputs": [
						{
							"indexed": true,
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"indexed": false,
							"internalType": "int256",
							"name": "marginDelta",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "uint16",
							"name": "destChainId",
							"type": "uint16"
						},
						{
							"indexed": false,
							"internalType": "bool",
							"name": "isReceived",
							"type": "bool"
						}
					],
					"name": "MarginTransferred",
					"type": "event"
				},
				{
					"anonymous": false,
					"inputs": [
						{
							"indexed": true,
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "currentRoundId",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "targetRoundId",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "commitDeposit",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "keeperDeposit",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "bytes32",
							"name": "trackingCode",
							"type": "bytes32"
						}
					],
					"name": "NextPriceOrderRemoved",
					"type": "event"
				},
				{
					"anonymous": false,
					"inputs": [
						{
							"indexed": true,
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"indexed": false,
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "targetRoundId",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "commitDeposit",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "keeperDeposit",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "bytes32",
							"name": "trackingCode",
							"type": "bytes32"
						}
					],
					"name": "NextPriceOrderSubmitted",
					"type": "event"
				},
				{
					"anonymous": false,
					"inputs": [
						{
							"indexed": true,
							"internalType": "uint256",
							"name": "id",
							"type": "uint256"
						},
						{
							"indexed": true,
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"indexed": true,
							"internalType": "address",
							"name": "liquidator",
							"type": "address"
						},
						{
							"indexed": false,
							"internalType": "int256",
							"name": "size",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "price",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "fee",
							"type": "uint256"
						}
					],
					"name": "PositionLiquidated",
					"type": "event"
				},
				{
					"anonymous": false,
					"inputs": [
						{
							"indexed": true,
							"internalType": "uint256",
							"name": "id",
							"type": "uint256"
						},
						{
							"indexed": true,
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "margin",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "int256",
							"name": "size",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "int256",
							"name": "tradeSize",
							"type": "int256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "lastPrice",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "fundingIndex",
							"type": "uint256"
						},
						{
							"indexed": false,
							"internalType": "uint256",
							"name": "fee",
							"type": "uint256"
						}
					],
					"name": "PositionModified",
					"type": "event"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "accessibleMargin",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "marginAccessible",
							"type": "uint256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "accruedFunding",
					"outputs": [
						{
							"internalType": "int256",
							"name": "funding",
							"type": "int256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "assetPrice",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "price",
							"type": "uint256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "baseAsset",
					"outputs": [
						{
							"internalType": "bytes32",
							"name": "",
							"type": "bytes32"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "canLiquidate",
					"outputs": [
						{
							"internalType": "bool",
							"name": "",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"internalType": "bytes32",
							"name": "bridgeKey",
							"type": "bytes32"
						}
					],
					"name": "cancelNextPriceOrder",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "bytes32",
							"name": "bridgeKey",
							"type": "bytes32"
						}
					],
					"name": "closePosition",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "bytes32",
							"name": "trackingCode",
							"type": "bytes32"
						},
						{
							"internalType": "bytes32",
							"name": "bridgeKey",
							"type": "bytes32"
						}
					],
					"name": "closePositionWithTracking",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "currentFundingRate",
					"outputs": [
						{
							"internalType": "int256",
							"name": "",
							"type": "int256"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"internalType": "uint256",
							"name": "marginDelta",
							"type": "uint256"
						}
					],
					"name": "destTransferMargin",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "",
							"type": "uint256"
						}
					],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						},
						{
							"internalType": "bytes32",
							"name": "bridgeKey",
							"type": "bytes32"
						}
					],
					"name": "executeNextPriceOrder",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "fundingLastRecomputed",
					"outputs": [
						{
							"internalType": "uint32",
							"name": "",
							"type": "uint32"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "uint256",
							"name": "",
							"type": "uint256"
						}
					],
					"name": "fundingSequence",
					"outputs": [
						{
							"internalType": "int128",
							"name": "",
							"type": "int128"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "fundingSequenceLength",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "",
							"type": "uint256"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "_account",
							"type": "address"
						},
						{
							"internalType": "uint256",
							"name": "_marginDelta",
							"type": "uint256"
						},
						{
							"internalType": "bytes32",
							"name": "_bridgeName",
							"type": "bytes32"
						},
						{
							"internalType": "uint16",
							"name": "_destChainId",
							"type": "uint16"
						}
					],
					"name": "getSendWithdrawMargin",
					"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": "account",
							"type": "address"
						},
						{
							"internalType": "bytes32",
							"name": "bridgeKey",
							"type": "bytes32"
						}
					],
					"name": "liquidatePosition",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "liquidationFee",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "",
							"type": "uint256"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "liquidationPrice",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "price",
							"type": "uint256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "marketDebt",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "debt",
							"type": "uint256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "marketKey",
					"outputs": [
						{
							"internalType": "bytes32",
							"name": "",
							"type": "bytes32"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "marketSize",
					"outputs": [
						{
							"internalType": "uint128",
							"name": "",
							"type": "uint128"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "marketSizes",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "long",
							"type": "uint256"
						},
						{
							"internalType": "uint256",
							"name": "short",
							"type": "uint256"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "marketSkew",
					"outputs": [
						{
							"internalType": "int128",
							"name": "",
							"type": "int128"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						},
						{
							"internalType": "bytes32",
							"name": "bridgeKey",
							"type": "bytes32"
						}
					],
					"name": "modifyPosition",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						},
						{
							"internalType": "bytes32",
							"name": "trackingCode",
							"type": "bytes32"
						},
						{
							"internalType": "bytes32",
							"name": "bridgeKey",
							"type": "bytes32"
						}
					],
					"name": "modifyPositionWithTracking",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "",
							"type": "address"
						}
					],
					"name": "nextPriceOrders",
					"outputs": [
						{
							"internalType": "int128",
							"name": "sizeDelta",
							"type": "int128"
						},
						{
							"internalType": "uint128",
							"name": "targetRoundId",
							"type": "uint128"
						},
						{
							"internalType": "uint128",
							"name": "commitDeposit",
							"type": "uint128"
						},
						{
							"internalType": "uint128",
							"name": "keeperDeposit",
							"type": "uint128"
						},
						{
							"internalType": "bytes32",
							"name": "trackingCode",
							"type": "bytes32"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "notionalValue",
					"outputs": [
						{
							"internalType": "int256",
							"name": "value",
							"type": "int256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						}
					],
					"name": "orderFee",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "fee",
							"type": "uint256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "",
							"type": "address"
						}
					],
					"name": "positions",
					"outputs": [
						{
							"internalType": "uint64",
							"name": "id",
							"type": "uint64"
						},
						{
							"internalType": "uint64",
							"name": "lastFundingIndex",
							"type": "uint64"
						},
						{
							"internalType": "uint128",
							"name": "margin",
							"type": "uint128"
						},
						{
							"internalType": "uint128",
							"name": "lastPrice",
							"type": "uint128"
						},
						{
							"internalType": "int128",
							"name": "size",
							"type": "int128"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						},
						{
							"internalType": "address",
							"name": "sender",
							"type": "address"
						}
					],
					"name": "postTradeDetails",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "margin",
							"type": "uint256"
						},
						{
							"internalType": "int256",
							"name": "size",
							"type": "int256"
						},
						{
							"internalType": "uint256",
							"name": "price",
							"type": "uint256"
						},
						{
							"internalType": "uint256",
							"name": "liqPrice",
							"type": "uint256"
						},
						{
							"internalType": "uint256",
							"name": "fee",
							"type": "uint256"
						},
						{
							"internalType": "enum IFuturesMarketBaseTypes.Status",
							"name": "status",
							"type": "uint8"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "profitLoss",
					"outputs": [
						{
							"internalType": "int256",
							"name": "pnl",
							"type": "int256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "rebuildCache",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "recomputeFunding",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "lastIndex",
							"type": "uint256"
						}
					],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "address",
							"name": "account",
							"type": "address"
						}
					],
					"name": "remainingMargin",
					"outputs": [
						{
							"internalType": "uint256",
							"name": "marginRemaining",
							"type": "uint256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"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": "int256",
							"name": "sizeDelta",
							"type": "int256"
						}
					],
					"name": "submitNextPriceOrder",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "int256",
							"name": "sizeDelta",
							"type": "int256"
						},
						{
							"internalType": "bytes32",
							"name": "trackingCode",
							"type": "bytes32"
						}
					],
					"name": "submitNextPriceOrderWithTracking",
					"outputs": [],
					"stateMutability": "nonpayable",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "int256",
							"name": "marginDelta",
							"type": "int256"
						},
						{
							"internalType": "bytes32",
							"name": "bridgeName",
							"type": "bytes32"
						},
						{
							"internalType": "uint16",
							"name": "destChainId",
							"type": "uint16"
						},
						{
							"internalType": "bool",
							"name": "erc20Payment",
							"type": "bool"
						}
					],
					"name": "transferMargin",
					"outputs": [],
					"stateMutability": "payable",
					"type": "function"
				},
				{
					"inputs": [],
					"name": "unrecordedFunding",
					"outputs": [
						{
							"internalType": "int256",
							"name": "funding",
							"type": "int256"
						},
						{
							"internalType": "bool",
							"name": "invalid",
							"type": "bool"
						}
					],
					"stateMutability": "view",
					"type": "function"
				},
				{
					"inputs": [
						{
							"internalType": "bytes32",
							"name": "bridgeName",
							"type": "bytes32"
						},
						{
							"internalType": "uint16",
							"name": "destChainId",
							"type": "uint16"
						},
						{
							"internalType": "bool",
							"name": "erc20Payment",
							"type": "bool"
						}
					],
					"name": "withdrawAllMargin",
					"outputs": [],
					"stateMutability": "payable",
					"type": "function"
				}
			]
		},
	  "ExchangeAgent": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_weth",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_usdc",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_synth",
				"type": "address"
			  },
			  {
				"internalType": "contract IJoeRouter02",
				"name": "_dexRouter",
				"type": "address"
			  },
			  {
				"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": "address",
				"name": "contractAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "contractType",
				"type": "uint16"
			  }
			],
			"name": "SetAssociatedContract",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountIn",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "tokenOut",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountOut",
				"type": "uint256"
			  }
			],
			"name": "SwapETHToToken",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "tokenIn",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountIn",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "tokenOut",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amountOut",
				"type": "uint256"
			  }
			],
			"name": "SwapTokenToToken",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "SYNTH",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "USDC",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "WETH",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "dexRouter",
			"outputs": [
			  {
				"internalType": "contract IJoeRouter02",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_tokenIn",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amountIn",
				"type": "uint256"
			  }
			],
			"name": "getSYNTHExpectedAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_amountIn",
				"type": "uint256"
			  }
			],
			"name": "getSYNTHExpectedAmountFromETH",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "amountIn",
				"type": "uint256"
			  }
			],
			"name": "getUSDCForSYNTH",
			"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": "_contract",
				"type": "address"
			  },
			  {
				"internalType": "uint16",
				"name": "_type",
				"type": "uint16"
			  }
			],
			"name": "setAssociatedContracts",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_amountIn",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  }
			],
			"name": "swapETHToSYNTH",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_tokenIn",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amountIn",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  }
			],
			"name": "swapTokenToSYNTH",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "PerpsV2MarketStateETH": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_owner",
						"type": "address"
					},
					{
						"internalType": "address[]",
						"name": "_associatedContracts",
						"type": "address[]"
					},
					{
						"internalType": "bytes32",
						"name": "_baseAsset",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "address",
						"name": "_legacyState",
						"type": "address"
					}
				],
				"stateMutability": "nonpayable",
				"type": "constructor"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "address",
						"name": "associatedContract",
						"type": "address"
					}
				],
				"name": "AssociatedContractAdded",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "address",
						"name": "associatedContract",
						"type": "address"
					}
				],
				"name": "AssociatedContractRemoved",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bool",
						"name": "legacyContractExists",
						"type": "bool"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "legacyState",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "legacyFundinSequenceOffset",
						"type": "uint256"
					}
				],
				"name": "MarketStateInitialized",
				"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": "associatedContracts_",
						"type": "address[]"
					}
				],
				"name": "addAssociatedContracts",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "associatedContracts",
				"outputs": [
					{
						"internalType": "address[]",
						"name": "",
						"type": "address[]"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "baseAsset",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "delayedOrders",
				"outputs": [
					{
						"components": [
							{
								"internalType": "bool",
								"name": "isOffchain",
								"type": "bool"
							},
							{
								"internalType": "int128",
								"name": "sizeDelta",
								"type": "int128"
							},
							{
								"internalType": "uint128",
								"name": "desiredFillPrice",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "targetRoundId",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "commitDeposit",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "keeperDeposit",
								"type": "uint128"
							},
							{
								"internalType": "uint256",
								"name": "executableAtTime",
								"type": "uint256"
							},
							{
								"internalType": "uint256",
								"name": "intentionTime",
								"type": "uint256"
							},
							{
								"internalType": "bytes32",
								"name": "trackingCode",
								"type": "bytes32"
							}
						],
						"internalType": "struct IPerpsV2MarketBaseTypes.DelayedOrder",
						"name": "",
						"type": "tuple"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "deleteDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "deletePosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "entryDebtCorrection",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "address",
						"name": "flagger",
						"type": "address"
					}
				],
				"name": "flag",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingLastRecomputed",
				"outputs": [
					{
						"internalType": "uint32",
						"name": "",
						"type": "uint32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingRateLastRecomputed",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					}
				],
				"name": "fundingSequence",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingSequenceLength",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "getDelayedOrderAddressesLength",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "pageSize",
						"type": "uint256"
					}
				],
				"name": "getDelayedOrderAddressesPage",
				"outputs": [
					{
						"internalType": "address[]",
						"name": "",
						"type": "address[]"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "getFlaggedAddressesLength",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "pageSize",
						"type": "uint256"
					}
				],
				"name": "getFlaggedAddressesPage",
				"outputs": [
					{
						"internalType": "address[]",
						"name": "",
						"type": "address[]"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "getPositionAddressesLength",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "pageSize",
						"type": "uint256"
					}
				],
				"name": "getPositionAddressesPage",
				"outputs": [
					{
						"internalType": "address[]",
						"name": "",
						"type": "address[]"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "initialized",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "isFlagged",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "legacyFundinSequenceOffset",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "legacyState",
				"outputs": [
					{
						"internalType": "contract PerpsV2MarketStateLegacyR1",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "linkOrInitializeState",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketKey",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSize",
				"outputs": [
					{
						"internalType": "uint128",
						"name": "",
						"type": "uint128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSkew",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "nextPositionId",
				"outputs": [
					{
						"internalType": "uint64",
						"name": "",
						"type": "uint64"
					}
				],
				"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": "",
						"type": "address"
					}
				],
				"name": "positionFlagger",
				"outputs": [
					{
						"internalType": "address",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "positions",
				"outputs": [
					{
						"components": [
							{
								"internalType": "uint64",
								"name": "id",
								"type": "uint64"
							},
							{
								"internalType": "uint64",
								"name": "lastFundingIndex",
								"type": "uint64"
							},
							{
								"internalType": "uint128",
								"name": "margin",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "lastPrice",
								"type": "uint128"
							},
							{
								"internalType": "int128",
								"name": "size",
								"type": "int128"
							}
						],
						"internalType": "struct IPerpsV2MarketBaseTypes.Position",
						"name": "",
						"type": "tuple"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int128",
						"name": "fundingSequence",
						"type": "int128"
					}
				],
				"name": "pushFundingSequence",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address[]",
						"name": "associatedContracts_",
						"type": "address[]"
					}
				],
				"name": "removeAssociatedContracts",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_baseAsset",
						"type": "bytes32"
					}
				],
				"name": "setBaseAsset",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int128",
						"name": "entryDebtCorrection",
						"type": "int128"
					}
				],
				"name": "setEntryDebtCorrection",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint32",
						"name": "lastRecomputed",
						"type": "uint32"
					}
				],
				"name": "setFundingLastRecomputed",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int128",
						"name": "_fundingRateLastRecomputed",
						"type": "int128"
					}
				],
				"name": "setFundingRateLastRecomputed",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "setMarketKey",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint128",
						"name": "_marketSize",
						"type": "uint128"
					}
				],
				"name": "setMarketSize",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int128",
						"name": "_marketSkew",
						"type": "int128"
					}
				],
				"name": "setMarketSkew",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint64",
						"name": "nextPositionId",
						"type": "uint64"
					}
				],
				"name": "setNextPositionId",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "unflag",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bool",
						"name": "isOffchain",
						"type": "bool"
					},
					{
						"internalType": "int128",
						"name": "sizeDelta",
						"type": "int128"
					},
					{
						"internalType": "uint128",
						"name": "desiredFillPrice",
						"type": "uint128"
					},
					{
						"internalType": "uint128",
						"name": "targetRoundId",
						"type": "uint128"
					},
					{
						"internalType": "uint128",
						"name": "commitDeposit",
						"type": "uint128"
					},
					{
						"internalType": "uint128",
						"name": "keeperDeposit",
						"type": "uint128"
					},
					{
						"internalType": "uint256",
						"name": "executableAtTime",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "intentionTime",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "updateDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "uint64",
						"name": "id",
						"type": "uint64"
					},
					{
						"internalType": "uint64",
						"name": "lastFundingIndex",
						"type": "uint64"
					},
					{
						"internalType": "uint128",
						"name": "margin",
						"type": "uint128"
					},
					{
						"internalType": "uint128",
						"name": "lastPrice",
						"type": "uint128"
					},
					{
						"internalType": "int128",
						"name": "size",
						"type": "int128"
					}
				],
				"name": "updatePosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			}
		]
	  },
	  "ProxyPerpsV2ETH": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "address payable",
						"name": "_proxy",
						"type": "address"
					},
					{
						"internalType": "address",
						"name": "_marketState",
						"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": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "fundingRate",
						"type": "int256"
					},
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "timestamp",
						"type": "uint256"
					}
				],
				"name": "FundingRecomputed",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "marginDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					}
				],
				"name": "MarginTransferred",
				"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": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "baseAsset",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					}
				],
				"name": "PerpsTracking",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "margin",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "tradeSize",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "lastPrice",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fundingIndex",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "skew",
						"type": "int256"
					}
				],
				"name": "PositionModified",
				"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": "acceptOwnership",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "closePosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "closePositionWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "marginDelta",
						"type": "uint256"
					}
				],
				"name": "destTransferMargin",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_marginDelta",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "getSendWithdrawMargin",
				"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": "marketState",
				"outputs": [
					{
						"internalType": "contract IPerpsV2MarketState",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "messageSender",
				"outputs": [
					{
						"internalType": "address",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "modifyPosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "modifyPositionWithTracking",
				"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": [],
				"name": "proxy",
				"outputs": [
					{
						"internalType": "contract Proxy",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "rebuildCache",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "recomputeFunding",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "lastIndex",
						"type": "uint256"
					}
				],
				"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": "int256",
						"name": "marginDelta",
						"type": "int256"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "transferMargin",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "withdrawAllMargin",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "accessibleMargin",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "marginAccessible",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "accruedFunding",
				"outputs": [
					{
						"internalType": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "assetPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "canLiquidate",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "currentFundingRate",
				"outputs": [
					{
						"internalType": "int256",
						"name": "",
						"type": "int256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "currentFundingVelocity",
				"outputs": [
					{
						"internalType": "int256",
						"name": "",
						"type": "int256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "delayedOrders",
				"outputs": [
					{
						"components": [
							{
								"internalType": "bool",
								"name": "isOffchain",
								"type": "bool"
							},
							{
								"internalType": "int128",
								"name": "sizeDelta",
								"type": "int128"
							},
							{
								"internalType": "uint128",
								"name": "desiredFillPrice",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "targetRoundId",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "commitDeposit",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "keeperDeposit",
								"type": "uint128"
							},
							{
								"internalType": "uint256",
								"name": "executableAtTime",
								"type": "uint256"
							},
							{
								"internalType": "uint256",
								"name": "intentionTime",
								"type": "uint256"
							},
							{
								"internalType": "bytes32",
								"name": "trackingCode",
								"type": "bytes32"
							}
						],
						"internalType": "struct IPerpsV2MarketBaseTypes.DelayedOrder",
						"name": "",
						"type": "tuple"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					}
				],
				"name": "fillPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingLastRecomputed",
				"outputs": [
					{
						"internalType": "uint32",
						"name": "",
						"type": "uint32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingRateLastRecomputed",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					}
				],
				"name": "fundingSequence",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingSequenceLength",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "isFlagged",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "liquidationFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "liquidationPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketDebt",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "debt",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketKey",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "key",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSize",
				"outputs": [
					{
						"internalType": "uint128",
						"name": "",
						"type": "uint128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSizes",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "long",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "short",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSkew",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "notionalValue",
				"outputs": [
					{
						"internalType": "int256",
						"name": "value",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "enum IPerpsV2MarketBaseTypes.OrderType",
						"name": "orderType",
						"type": "uint8"
					}
				],
				"name": "orderFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "positions",
				"outputs": [
					{
						"components": [
							{
								"internalType": "uint64",
								"name": "id",
								"type": "uint64"
							},
							{
								"internalType": "uint64",
								"name": "lastFundingIndex",
								"type": "uint64"
							},
							{
								"internalType": "uint128",
								"name": "margin",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "lastPrice",
								"type": "uint128"
							},
							{
								"internalType": "int128",
								"name": "size",
								"type": "int128"
							}
						],
						"internalType": "struct IPerpsV2MarketBaseTypes.Position",
						"name": "",
						"type": "tuple"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "tradePrice",
						"type": "uint256"
					},
					{
						"internalType": "enum IPerpsV2MarketBaseTypes.OrderType",
						"name": "orderType",
						"type": "uint8"
					},
					{
						"internalType": "address",
						"name": "sender",
						"type": "address"
					}
				],
				"name": "postTradeDetails",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "margin",
						"type": "uint256"
					},
					{
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "liqPrice",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"internalType": "enum IPerpsV2MarketBaseTypes.Status",
						"name": "status",
						"type": "uint8"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "profitLoss",
				"outputs": [
					{
						"internalType": "int256",
						"name": "pnl",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "remainingMargin",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "marginRemaining",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "unrecordedFunding",
				"outputs": [
					{
						"internalType": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bool",
						"name": "isOffchain",
						"type": "bool"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "currentRoundId",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "targetRoundId",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "commitDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "keeperDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "DelayedOrderRemoved",
				"type": "event"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "cancelDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "cancelOffchainDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "executeDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes[]",
						"name": "priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "executeOffchainDelayedOrder",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bool",
						"name": "isOffchain",
						"type": "bool"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "targetRoundId",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "intentionTime",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "executableAtTime",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "commitDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "keeperDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "DelayedOrderSubmitted",
				"type": "event"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "desiredTimeDelta",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitCloseDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitCloseOffchainDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredTimeDelta",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					}
				],
				"name": "submitDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredTimeDelta",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					}
				],
				"name": "submitOffchainDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitOffchainDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "flagger",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "timestamp",
						"type": "uint256"
					}
				],
				"name": "PositionFlagged",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "liquidator",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "flaggerFee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "liquidatorFee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "stakersFee",
						"type": "uint256"
					}
				],
				"name": "PositionLiquidated",
				"type": "event"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "flagPosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "forceLiquidatePosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "liquidatePosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			}
		]
	  },
	  "PerpsV2MarketETH": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "address payable",
						"name": "_proxy",
						"type": "address"
					},
					{
						"internalType": "address",
						"name": "_marketState",
						"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": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "fundingRate",
						"type": "int256"
					},
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "timestamp",
						"type": "uint256"
					}
				],
				"name": "FundingRecomputed",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "marginDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					}
				],
				"name": "MarginTransferred",
				"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": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "baseAsset",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					}
				],
				"name": "PerpsTracking",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "margin",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "tradeSize",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "lastPrice",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fundingIndex",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "skew",
						"type": "int256"
					}
				],
				"name": "PositionModified",
				"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": "acceptOwnership",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "closePosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "closePositionWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "marginDelta",
						"type": "uint256"
					}
				],
				"name": "destTransferMargin",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_marginDelta",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "getSendWithdrawMargin",
				"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": "marketState",
				"outputs": [
					{
						"internalType": "contract IPerpsV2MarketState",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "messageSender",
				"outputs": [
					{
						"internalType": "address",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "modifyPosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "modifyPositionWithTracking",
				"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": [],
				"name": "proxy",
				"outputs": [
					{
						"internalType": "contract Proxy",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "rebuildCache",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "recomputeFunding",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "lastIndex",
						"type": "uint256"
					}
				],
				"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": "int256",
						"name": "marginDelta",
						"type": "int256"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "transferMargin",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "withdrawAllMargin",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			}
		]
	  },
	  "PerpsV2MarketDelayedExecutionETH": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "address payable",
						"name": "_proxy",
						"type": "address"
					},
					{
						"internalType": "address",
						"name": "_marketState",
						"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": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bool",
						"name": "isOffchain",
						"type": "bool"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "currentRoundId",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "targetRoundId",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "commitDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "keeperDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "DelayedOrderRemoved",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "fundingRate",
						"type": "int256"
					},
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "timestamp",
						"type": "uint256"
					}
				],
				"name": "FundingRecomputed",
				"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": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "baseAsset",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					}
				],
				"name": "PerpsTracking",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "margin",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "tradeSize",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "lastPrice",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fundingIndex",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "skew",
						"type": "int256"
					}
				],
				"name": "PositionModified",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "address",
						"name": "proxyAddress",
						"type": "address"
					}
				],
				"name": "ProxyUpdated",
				"type": "event"
			},
			{
				"inputs": [],
				"name": "acceptOwnership",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "cancelDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "cancelOffchainDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "executeDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes[]",
						"name": "priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "executeOffchainDelayedOrder",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "isResolverCached",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketState",
				"outputs": [
					{
						"internalType": "contract IPerpsV2MarketState",
						"name": "",
						"type": "address"
					}
				],
				"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": [],
				"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"
			}
		]
	  },
	  "PerpsV2MarketDelayedIntentETH": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "address payable",
						"name": "_proxy",
						"type": "address"
					},
					{
						"internalType": "address",
						"name": "_marketState",
						"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": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bool",
						"name": "isOffchain",
						"type": "bool"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "targetRoundId",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "intentionTime",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "executableAtTime",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "commitDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "keeperDeposit",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "DelayedOrderSubmitted",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "fundingRate",
						"type": "int256"
					},
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "timestamp",
						"type": "uint256"
					}
				],
				"name": "FundingRecomputed",
				"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": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "baseAsset",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					}
				],
				"name": "PerpsTracking",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "margin",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "tradeSize",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "lastPrice",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fundingIndex",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "skew",
						"type": "int256"
					}
				],
				"name": "PositionModified",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "address",
						"name": "proxyAddress",
						"type": "address"
					}
				],
				"name": "ProxyUpdated",
				"type": "event"
			},
			{
				"inputs": [],
				"name": "acceptOwnership",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "isResolverCached",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketState",
				"outputs": [
					{
						"internalType": "contract IPerpsV2MarketState",
						"name": "",
						"type": "address"
					}
				],
				"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": [],
				"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": "desiredTimeDelta",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitCloseDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitCloseOffchainDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredTimeDelta",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					}
				],
				"name": "submitDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredTimeDelta",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					}
				],
				"name": "submitOffchainDelayedOrder",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "desiredFillPrice",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					}
				],
				"name": "submitOffchainDelayedOrderWithTracking",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			}
		]
	  },
	  "PerpsV2MarketLiquidateETH": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "address payable",
						"name": "_proxy",
						"type": "address"
					},
					{
						"internalType": "address",
						"name": "_marketState",
						"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": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "fundingRate",
						"type": "int256"
					},
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "timestamp",
						"type": "uint256"
					}
				],
				"name": "FundingRecomputed",
				"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": "bytes32",
						"name": "trackingCode",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "baseAsset",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					}
				],
				"name": "PerpsTracking",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "flagger",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "timestamp",
						"type": "uint256"
					}
				],
				"name": "PositionFlagged",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "liquidator",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "flaggerFee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "liquidatorFee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "stakersFee",
						"type": "uint256"
					}
				],
				"name": "PositionLiquidated",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint256",
						"name": "id",
						"type": "uint256"
					},
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "margin",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "tradeSize",
						"type": "int256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "lastPrice",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fundingIndex",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "int256",
						"name": "skew",
						"type": "int256"
					}
				],
				"name": "PositionModified",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "address",
						"name": "proxyAddress",
						"type": "address"
					}
				],
				"name": "ProxyUpdated",
				"type": "event"
			},
			{
				"inputs": [],
				"name": "acceptOwnership",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "flagPosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "forceLiquidatePosition",
				"outputs": [],
				"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": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					}
				],
				"name": "liquidatePosition",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketState",
				"outputs": [
					{
						"internalType": "contract IPerpsV2MarketState",
						"name": "",
						"type": "address"
					}
				],
				"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": [],
				"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"
			}
		]
	  },
	  "PerpsV2MarketViewsETH": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_marketState",
						"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"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "accessibleMargin",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "marginAccessible",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "accruedFunding",
				"outputs": [
					{
						"internalType": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "assetPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "baseAsset",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "key",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "canLiquidate",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "currentFundingRate",
				"outputs": [
					{
						"internalType": "int256",
						"name": "",
						"type": "int256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "currentFundingVelocity",
				"outputs": [
					{
						"internalType": "int256",
						"name": "",
						"type": "int256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "delayedOrders",
				"outputs": [
					{
						"components": [
							{
								"internalType": "bool",
								"name": "isOffchain",
								"type": "bool"
							},
							{
								"internalType": "int128",
								"name": "sizeDelta",
								"type": "int128"
							},
							{
								"internalType": "uint128",
								"name": "desiredFillPrice",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "targetRoundId",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "commitDeposit",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "keeperDeposit",
								"type": "uint128"
							},
							{
								"internalType": "uint256",
								"name": "executableAtTime",
								"type": "uint256"
							},
							{
								"internalType": "uint256",
								"name": "intentionTime",
								"type": "uint256"
							},
							{
								"internalType": "bytes32",
								"name": "trackingCode",
								"type": "bytes32"
							}
						],
						"internalType": "struct IPerpsV2MarketBaseTypes.DelayedOrder",
						"name": "",
						"type": "tuple"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					}
				],
				"name": "fillPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingLastRecomputed",
				"outputs": [
					{
						"internalType": "uint32",
						"name": "",
						"type": "uint32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingRateLastRecomputed",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "index",
						"type": "uint256"
					}
				],
				"name": "fundingSequence",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "fundingSequenceLength",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "isFlagged",
				"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": "account",
						"type": "address"
					}
				],
				"name": "liquidationFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "liquidationPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketDebt",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "debt",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketKey",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "key",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSize",
				"outputs": [
					{
						"internalType": "uint128",
						"name": "",
						"type": "uint128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSizes",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "long",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "short",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketSkew",
				"outputs": [
					{
						"internalType": "int128",
						"name": "",
						"type": "int128"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "marketState",
				"outputs": [
					{
						"internalType": "contract IPerpsV2MarketState",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "notionalValue",
				"outputs": [
					{
						"internalType": "int256",
						"name": "value",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "enum IPerpsV2MarketBaseTypes.OrderType",
						"name": "orderType",
						"type": "uint8"
					}
				],
				"name": "orderFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "positions",
				"outputs": [
					{
						"components": [
							{
								"internalType": "uint64",
								"name": "id",
								"type": "uint64"
							},
							{
								"internalType": "uint64",
								"name": "lastFundingIndex",
								"type": "uint64"
							},
							{
								"internalType": "uint128",
								"name": "margin",
								"type": "uint128"
							},
							{
								"internalType": "uint128",
								"name": "lastPrice",
								"type": "uint128"
							},
							{
								"internalType": "int128",
								"name": "size",
								"type": "int128"
							}
						],
						"internalType": "struct IPerpsV2MarketBaseTypes.Position",
						"name": "",
						"type": "tuple"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "int256",
						"name": "sizeDelta",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "tradePrice",
						"type": "uint256"
					},
					{
						"internalType": "enum IPerpsV2MarketBaseTypes.OrderType",
						"name": "orderType",
						"type": "uint8"
					},
					{
						"internalType": "address",
						"name": "sender",
						"type": "address"
					}
				],
				"name": "postTradeDetails",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "margin",
						"type": "uint256"
					},
					{
						"internalType": "int256",
						"name": "size",
						"type": "int256"
					},
					{
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "liqPrice",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"internalType": "enum IPerpsV2MarketBaseTypes.Status",
						"name": "status",
						"type": "uint8"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "profitLoss",
				"outputs": [
					{
						"internalType": "int256",
						"name": "pnl",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "rebuildCache",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "remainingMargin",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "marginRemaining",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"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": "unrecordedFunding",
				"outputs": [
					{
						"internalType": "int256",
						"name": "funding",
						"type": "int256"
					},
					{
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			}
		]
	  },
	  "PerpsV2MarketSettings": {
		"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": "uint256",
				"name": "keeperFee",
				"type": "uint256"
			  }
			],
			"name": "KeeperLiquidationFeeUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "bps",
				"type": "uint256"
			  }
			],
			"name": "LiquidationBufferRatioUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "bps",
				"type": "uint256"
			  }
			],
			"name": "LiquidationFeeRatioUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "sUSD",
				"type": "uint256"
			  }
			],
			"name": "MaxKeeperFeeUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "minMargin",
				"type": "uint256"
			  }
			],
			"name": "MinInitialMarginUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "sUSD",
				"type": "uint256"
			  }
			],
			"name": "MinKeeperFeeUpdated",
			"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": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "parameter",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "ParameterUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "parameter",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "value",
				"type": "bytes32"
			  }
			],
			"name": "ParameterUpdatedBytes32",
			"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": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "delayedOrderConfirmWindow",
			"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": "keeperLiquidationFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "liquidationBufferRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "liquidationFeeRatio",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "liquidationPremiumMultiplier",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "makerFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "makerFeeDelayedOrder",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "makerFeeOffchainDelayedOrder",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "maxDelayTimeDelta",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "maxFundingVelocity",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "maxKeeperFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "maxLeverage",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "maxLiquidationDelta",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "maxMarketValue",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "maxPD",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "minDelayTimeDelta",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "minInitialMargin",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "minKeeperFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "nextPriceConfirmWindow",
			"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": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "offchainDelayedOrderMaxAge",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "offchainDelayedOrderMinAge",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "offchainMarketKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "offchainPriceDivergence",
			"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": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "parameters",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "uint256",
					"name": "takerFee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "takerFeeDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFeeDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "takerFeeOffchainDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFeeOffchainDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLeverage",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxMarketValue",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxFundingVelocity",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "skewScale",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "nextPriceConfirmWindow",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "delayedOrderConfirmWindow",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "minDelayTimeDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxDelayTimeDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainDelayedOrderMinAge",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainDelayedOrderMaxAge",
					"type": "uint256"
				  },
				  {
					"internalType": "bytes32",
					"name": "offchainMarketKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainPriceDivergence",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationPremiumMultiplier",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationBufferRatio",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLiquidationDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxPD",
					"type": "uint256"
				  }
				],
				"internalType": "struct IPerpsV2MarketSettings.Parameters",
				"name": "",
				"type": "tuple"
			  }
			],
			"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": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_delayedOrderConfirmWindow",
				"type": "uint256"
			  }
			],
			"name": "setDelayedOrderConfirmWindow",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_keeperFee",
				"type": "uint256"
			  }
			],
			"name": "setKeeperLiquidationFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_ratio",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationBufferRatio",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_ratio",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationFeeRatio",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_liquidationPremiumMultiplier",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationPremiumMultiplier",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_makerFee",
				"type": "uint256"
			  }
			],
			"name": "setMakerFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_makerFeeDelayedOrder",
				"type": "uint256"
			  }
			],
			"name": "setMakerFeeDelayedOrder",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_makerFeeOffchainDelayedOrder",
				"type": "uint256"
			  }
			],
			"name": "setMakerFeeOffchainDelayedOrder",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_maxDelayTimeDelta",
				"type": "uint256"
			  }
			],
			"name": "setMaxDelayTimeDelta",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_maxFundingVelocity",
				"type": "uint256"
			  }
			],
			"name": "setMaxFundingVelocity",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_sUSD",
				"type": "uint256"
			  }
			],
			"name": "setMaxKeeperFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_maxLeverage",
				"type": "uint256"
			  }
			],
			"name": "setMaxLeverage",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_maxLiquidationDelta",
				"type": "uint256"
			  }
			],
			"name": "setMaxLiquidationDelta",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_maxMarketValue",
				"type": "uint256"
			  }
			],
			"name": "setMaxMarketValue",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_maxPD",
				"type": "uint256"
			  }
			],
			"name": "setMaxPD",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_minDelayTimeDelta",
				"type": "uint256"
			  }
			],
			"name": "setMinDelayTimeDelta",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_minMargin",
				"type": "uint256"
			  }
			],
			"name": "setMinInitialMargin",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_sUSD",
				"type": "uint256"
			  }
			],
			"name": "setMinKeeperFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_nextPriceConfirmWindow",
				"type": "uint256"
			  }
			],
			"name": "setNextPriceConfirmWindow",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_offchainDelayedOrderMaxAge",
				"type": "uint256"
			  }
			],
			"name": "setOffchainDelayedOrderMaxAge",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_offchainDelayedOrderMinAge",
				"type": "uint256"
			  }
			],
			"name": "setOffchainDelayedOrderMinAge",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "_offchainMarketKey",
				"type": "bytes32"
			  }
			],
			"name": "setOffchainMarketKey",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_offchainPriceDivergence",
				"type": "uint256"
			  }
			],
			"name": "setOffchainPriceDivergence",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"components": [
				  {
					"internalType": "uint256",
					"name": "takerFee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "takerFeeDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFeeDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "takerFeeOffchainDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFeeOffchainDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLeverage",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxMarketValue",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxFundingVelocity",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "skewScale",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "nextPriceConfirmWindow",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "delayedOrderConfirmWindow",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "minDelayTimeDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxDelayTimeDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainDelayedOrderMinAge",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainDelayedOrderMaxAge",
					"type": "uint256"
				  },
				  {
					"internalType": "bytes32",
					"name": "offchainMarketKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainPriceDivergence",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationPremiumMultiplier",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationBufferRatio",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLiquidationDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxPD",
					"type": "uint256"
				  }
				],
				"internalType": "struct IPerpsV2MarketSettings.Parameters",
				"name": "_parameters",
				"type": "tuple"
			  }
			],
			"name": "setParameters",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_skewScale",
				"type": "uint256"
			  }
			],
			"name": "setSkewScale",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_takerFee",
				"type": "uint256"
			  }
			],
			"name": "setTakerFee",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_takerFeeDelayedOrder",
				"type": "uint256"
			  }
			],
			"name": "setTakerFeeDelayedOrder",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_takerFeeOffchainDelayedOrder",
				"type": "uint256"
			  }
			],
			"name": "setTakerFeeOffchainDelayedOrder",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "skewScale",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "takerFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "takerFeeDelayedOrder",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"name": "takerFeeOffchainDelayedOrder",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "PerpsV2MarketData": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "contract IAddressResolver",
				"name": "_resolverProxy",
				"type": "address"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "constructor"
		  },
		  {
			"inputs": [],
			"name": "allMarketSummaries",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "asset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "key",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLeverage",
					"type": "uint256"
				  },
				  {
					"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": "int256",
					"name": "currentFundingVelocity",
					"type": "int256"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "takerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeOffchainDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeOffchainDelayedOrder",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FeeRates",
					"name": "feeRates",
					"type": "tuple"
				  }
				],
				"internalType": "struct PerpsV2MarketData.MarketSummary[]",
				"name": "",
				"type": "tuple[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "allProxiedMarketSummaries",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "asset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "key",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLeverage",
					"type": "uint256"
				  },
				  {
					"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": "int256",
					"name": "currentFundingVelocity",
					"type": "int256"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "takerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeOffchainDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeOffchainDelayedOrder",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FeeRates",
					"name": "feeRates",
					"type": "tuple"
				  }
				],
				"internalType": "struct PerpsV2MarketData.MarketSummary[]",
				"name": "",
				"type": "tuple[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "globals",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "uint256",
					"name": "minInitialMargin",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationFeeRatio",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "minKeeperFee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxKeeperFee",
					"type": "uint256"
				  }
				],
				"internalType": "struct PerpsV2MarketData.FuturesGlobals",
				"name": "",
				"type": "tuple"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IPerpsV2MarketViews",
				"name": "market",
				"type": "address"
			  }
			],
			"name": "marketDetails",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "baseAsset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "marketKey",
					"type": "bytes32"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "takerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeOffchainDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeOffchainDelayedOrder",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FeeRates",
					"name": "feeRates",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "maxLeverage",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "maxMarketValue",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.MarketLimits",
					"name": "limits",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "maxFundingVelocity",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "skewScale",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FundingParameters",
					"name": "fundingParameters",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "marketSize",
						"type": "uint256"
					  },
					  {
						"components": [
						  {
							"internalType": "uint256",
							"name": "long",
							"type": "uint256"
						  },
						  {
							"internalType": "uint256",
							"name": "short",
							"type": "uint256"
						  }
						],
						"internalType": "struct PerpsV2MarketData.Sides",
						"name": "sides",
						"type": "tuple"
					  },
					  {
						"internalType": "uint256",
						"name": "marketDebt",
						"type": "uint256"
					  },
					  {
						"internalType": "int256",
						"name": "marketSkew",
						"type": "int256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.MarketSizeDetails",
					"name": "marketSizeDetails",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					  },
					  {
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					  }
					],
					"internalType": "struct PerpsV2MarketData.PriceDetails",
					"name": "priceDetails",
					"type": "tuple"
				  }
				],
				"internalType": "struct PerpsV2MarketData.MarketData",
				"name": "",
				"type": "tuple"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  }
			],
			"name": "marketDetailsForKey",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "baseAsset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "marketKey",
					"type": "bytes32"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "takerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeOffchainDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeOffchainDelayedOrder",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FeeRates",
					"name": "feeRates",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "maxLeverage",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "maxMarketValue",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.MarketLimits",
					"name": "limits",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "maxFundingVelocity",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "skewScale",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FundingParameters",
					"name": "fundingParameters",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "marketSize",
						"type": "uint256"
					  },
					  {
						"components": [
						  {
							"internalType": "uint256",
							"name": "long",
							"type": "uint256"
						  },
						  {
							"internalType": "uint256",
							"name": "short",
							"type": "uint256"
						  }
						],
						"internalType": "struct PerpsV2MarketData.Sides",
						"name": "sides",
						"type": "tuple"
					  },
					  {
						"internalType": "uint256",
						"name": "marketDebt",
						"type": "uint256"
					  },
					  {
						"internalType": "int256",
						"name": "marketSkew",
						"type": "int256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.MarketSizeDetails",
					"name": "marketSizeDetails",
					"type": "tuple"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "price",
						"type": "uint256"
					  },
					  {
						"internalType": "bool",
						"name": "invalid",
						"type": "bool"
					  }
					],
					"internalType": "struct PerpsV2MarketData.PriceDetails",
					"name": "priceDetails",
					"type": "tuple"
				  }
				],
				"internalType": "struct PerpsV2MarketData.MarketData",
				"name": "",
				"type": "tuple"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "markets",
				"type": "address[]"
			  }
			],
			"name": "marketSummaries",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "address",
					"name": "market",
					"type": "address"
				  },
				  {
					"internalType": "bytes32",
					"name": "asset",
					"type": "bytes32"
				  },
				  {
					"internalType": "bytes32",
					"name": "key",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLeverage",
					"type": "uint256"
				  },
				  {
					"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": "int256",
					"name": "currentFundingVelocity",
					"type": "int256"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "takerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeOffchainDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeOffchainDelayedOrder",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FeeRates",
					"name": "feeRates",
					"type": "tuple"
				  }
				],
				"internalType": "struct PerpsV2MarketData.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": "key",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLeverage",
					"type": "uint256"
				  },
				  {
					"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": "int256",
					"name": "currentFundingVelocity",
					"type": "int256"
				  },
				  {
					"components": [
					  {
						"internalType": "uint256",
						"name": "takerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFee",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "takerFeeOffchainDelayedOrder",
						"type": "uint256"
					  },
					  {
						"internalType": "uint256",
						"name": "makerFeeOffchainDelayedOrder",
						"type": "uint256"
					  }
					],
					"internalType": "struct PerpsV2MarketData.FeeRates",
					"name": "feeRates",
					"type": "tuple"
				  }
				],
				"internalType": "struct PerpsV2MarketData.MarketSummary[]",
				"name": "",
				"type": "tuple[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  }
			],
			"name": "parameters",
			"outputs": [
			  {
				"components": [
				  {
					"internalType": "uint256",
					"name": "takerFee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFee",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "takerFeeDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFeeDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "takerFeeOffchainDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "makerFeeOffchainDelayedOrder",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLeverage",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxMarketValue",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxFundingVelocity",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "skewScale",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "nextPriceConfirmWindow",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "delayedOrderConfirmWindow",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "minDelayTimeDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxDelayTimeDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainDelayedOrderMinAge",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainDelayedOrderMaxAge",
					"type": "uint256"
				  },
				  {
					"internalType": "bytes32",
					"name": "offchainMarketKey",
					"type": "bytes32"
				  },
				  {
					"internalType": "uint256",
					"name": "offchainPriceDivergence",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationPremiumMultiplier",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationBufferRatio",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxLiquidationDelta",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "maxPD",
					"type": "uint256"
				  }
				],
				"internalType": "struct IPerpsV2MarketSettings.Parameters",
				"name": "",
				"type": "tuple"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IPerpsV2MarketViews",
				"name": "market",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "positionDetails",
			"outputs": [
			  {
				"components": [
				  {
					"components": [
					  {
						"internalType": "uint64",
						"name": "id",
						"type": "uint64"
					  },
					  {
						"internalType": "uint64",
						"name": "lastFundingIndex",
						"type": "uint64"
					  },
					  {
						"internalType": "uint128",
						"name": "margin",
						"type": "uint128"
					  },
					  {
						"internalType": "uint128",
						"name": "lastPrice",
						"type": "uint128"
					  },
					  {
						"internalType": "int128",
						"name": "size",
						"type": "int128"
					  }
					],
					"internalType": "struct IPerpsV2MarketBaseTypes.Position",
					"name": "position",
					"type": "tuple"
				  },
				  {
					"internalType": "int256",
					"name": "notionalValue",
					"type": "int256"
				  },
				  {
					"internalType": "int256",
					"name": "profitLoss",
					"type": "int256"
				  },
				  {
					"internalType": "int256",
					"name": "accruedFunding",
					"type": "int256"
				  },
				  {
					"internalType": "uint256",
					"name": "remainingMargin",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "accessibleMargin",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationPrice",
					"type": "uint256"
				  },
				  {
					"internalType": "bool",
					"name": "canLiquidatePosition",
					"type": "bool"
				  }
				],
				"internalType": "struct PerpsV2MarketData.PositionData",
				"name": "",
				"type": "tuple"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "positionDetailsForMarketKey",
			"outputs": [
			  {
				"components": [
				  {
					"components": [
					  {
						"internalType": "uint64",
						"name": "id",
						"type": "uint64"
					  },
					  {
						"internalType": "uint64",
						"name": "lastFundingIndex",
						"type": "uint64"
					  },
					  {
						"internalType": "uint128",
						"name": "margin",
						"type": "uint128"
					  },
					  {
						"internalType": "uint128",
						"name": "lastPrice",
						"type": "uint128"
					  },
					  {
						"internalType": "int128",
						"name": "size",
						"type": "int128"
					  }
					],
					"internalType": "struct IPerpsV2MarketBaseTypes.Position",
					"name": "position",
					"type": "tuple"
				  },
				  {
					"internalType": "int256",
					"name": "notionalValue",
					"type": "int256"
				  },
				  {
					"internalType": "int256",
					"name": "profitLoss",
					"type": "int256"
				  },
				  {
					"internalType": "int256",
					"name": "accruedFunding",
					"type": "int256"
				  },
				  {
					"internalType": "uint256",
					"name": "remainingMargin",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "accessibleMargin",
					"type": "uint256"
				  },
				  {
					"internalType": "uint256",
					"name": "liquidationPrice",
					"type": "uint256"
				  },
				  {
					"internalType": "bool",
					"name": "canLiquidatePosition",
					"type": "bool"
				  }
				],
				"internalType": "struct PerpsV2MarketData.PositionData",
				"name": "",
				"type": "tuple"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "resolverProxy",
			"outputs": [
			  {
				"internalType": "contract IAddressResolver",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "OffChainExchanger": {
		"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": "bytes32",
						"name": "currencyKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "amount",
						"type": "uint256"
					}
				],
				"name": "DestIssueForOffChainExchange",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": true,
						"internalType": "address",
						"name": "toAddress",
						"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": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					}
				],
				"name": "OffChainSynthExchange",
				"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": "bytes32",
						"name": "currencyKey",
						"type": "bytes32"
					},
					{
						"indexed": true,
						"internalType": "bytes32",
						"name": "parameter",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "value",
						"type": "uint256"
					}
				],
				"name": "ParameterUpdated",
				"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": [
					{
						"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": "bool",
								"name": "erc20Payment",
								"type": "bool"
							}
						],
						"internalType": "struct IExchanger.ExchangeArgs",
						"name": "args",
						"type": "tuple"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "bytes[]",
						"name": "priceUpdateData",
						"type": "bytes[]"
					}
				],
				"name": "exchange",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "amountReceived",
						"type": "uint256"
					}
				],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_sourceAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes[]",
						"name": "_priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "exchangeForDexAggregation",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "destAmount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					}
				],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "sourceCurrencyKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "destinationCurrencyKey",
						"type": "bytes32"
					}
				],
				"name": "feeRateForOffChainExchange",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_sourceKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_destAmount",
						"type": "uint256"
					}
				],
				"name": "getAmountsForOffChainExchangeMinusFees",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "amountReceived",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "fee",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_sourceAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "getSendOffChainExchangeGasFee",
				"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": [
					{
						"internalType": "bytes32",
						"name": "_currencyKey",
						"type": "bytes32"
					}
				],
				"name": "offchainPriceDivergence",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_currencyKey",
						"type": "bytes32"
					}
				],
				"name": "offchainPriceMaxAge",
				"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": "bytes32[]",
						"name": "_currencyKeys",
						"type": "bytes32[]"
					},
					{
						"internalType": "uint256[]",
						"name": "_offchainPriceDivergences",
						"type": "uint256[]"
					}
				],
				"name": "setOffchainPriceDivergence",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32[]",
						"name": "_currencyKeys",
						"type": "bytes32[]"
					},
					{
						"internalType": "uint256[]",
						"name": "_offchainPriceMaxAges",
						"type": "uint256[]"
					}
				],
				"name": "setOffchainPriceMaxAge",
				"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"
			}
		]
	  },
	  "PerpsV2ExchangeRate": {
		"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": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractAdded",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "associatedContract",
				"type": "address"
			  }
			],
			"name": "AssociatedContractRemoved",
			"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": "offchainOracle",
				"type": "address"
			  }
			],
			"name": "OffchainOracleUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "assetId",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "priceFeedId",
				"type": "bytes32"
			  }
			],
			"name": "OffchainPriceFeedIdUpdated",
			"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": "associatedContracts_",
				"type": "address[]"
			  }
			],
			"name": "addAssociatedContracts",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "associatedContracts",
			"outputs": [
			  {
				"internalType": "address[]",
				"name": "",
				"type": "address[]"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_sourceRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "_sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "_destRate",
				"type": "uint256"
			  }
			],
			"name": "calculateExchangeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "pure",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_sourceKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_sourceAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "_destKey",
				"type": "bytes32"
			  }
			],
			"name": "getExchangeAmount",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "destAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "sourceRate",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "destRate",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes[]",
				"name": "priceUpdateData",
				"type": "bytes[]"
			  }
			],
			"name": "getUpdateFee",
			"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": "offchainOracle",
			"outputs": [
			  {
				"internalType": "contract IPyth",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "assetId",
				"type": "bytes32"
			  }
			],
			"name": "offchainPriceFeedId",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"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": "associatedContracts_",
				"type": "address[]"
			  }
			],
			"name": "removeAssociatedContracts",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "assetId",
				"type": "bytes32"
			  }
			],
			"name": "resolveAndGetLatestPrice",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "price",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "publishTime",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "assetId",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "maxAge",
				"type": "uint256"
			  }
			],
			"name": "resolveAndGetPrice",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "price",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "publishTime",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"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": "offchainOracle_",
				"type": "address"
			  }
			],
			"name": "setOffchainOracle",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "assetId",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "priceFeedId",
				"type": "bytes32"
			  }
			],
			"name": "setOffchainPriceFeedId",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "sender",
				"type": "address"
			  },
			  {
				"internalType": "bytes[]",
				"name": "priceUpdateData",
				"type": "bytes[]"
			  }
			],
			"name": "updatePythPrice",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  }
		]
	  },
	  "CircuitBreaker": {
		"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": "oracleAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "previousValue",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newValue",
				"type": "uint256"
			  }
			],
			"name": "CircuitBroken",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "oracleAddress",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "previousValue",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newValue",
				"type": "uint256"
			  }
			],
			"name": "LastValueOverridden",
			"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": "oracleAddress",
				"type": "address"
			  }
			],
			"name": "circuitBroken",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"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": [
			  {
				"internalType": "address",
				"name": "oracleAddress",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "isInvalid",
			"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": "oracleAddress",
				"type": "address"
			  }
			],
			"name": "lastValue",
			"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": "address",
				"name": "oracleAddress",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "probeCircuitBreaker",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "circuitBroken",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address[]",
				"name": "oracleAddresses",
				"type": "address[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "values",
				"type": "uint256[]"
			  }
			],
			"name": "resetLastValue",
			"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"
		  }
		]
	  },
	  "DexBridge": {
		"abi": [
		  {
			"inputs": [
			  { "internalType": "address", "name": "_owner", "type": "address" },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_factory",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_swapRouter",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_wrappedNative",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_nativeSynth",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "_nativeKey",
				"type": "bytes32"
			  }
			],
			"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": true,
				"internalType": "bytes32",
				"name": "_destNativeKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_destNativeAmount",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "_sourceSynthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_sourceSynthAmount",
				"type": "uint256"
			  }
			],
			"name": "DexSwapNativeToSynth",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "_sourceSynthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_sourceSynthAmount",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "_destNativeKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_destNativeAmount",
				"type": "uint256"
			  }
			],
			"name": "DexSwapSynthToNative",
			"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": "_to",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "_currency",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "OwnerWithdraw",
			"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": "uint256",
				"name": "_destSynthAmount",
				"type": "uint256"
			  }
			],
			"name": "getNativeInForSynth",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_sourceSynthAmount",
				"type": "uint256"
			  }
			],
			"name": "getNativeOutFromSynth",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_destNativeAmount",
				"type": "uint256"
			  }
			],
			"name": "getSynthInForNative",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_sourceNativeAmount",
				"type": "uint256"
			  }
			],
			"name": "getSynthOutFromNative",
			"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": "lbFactory",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nativeKey",
			"outputs": [
			  { "internalType": "bytes32", "name": "", "type": "bytes32" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "nativeSynthKey",
			"outputs": [
			  { "internalType": "bytes32", "name": "", "type": "bytes32" }
			],
			"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": "_to", "type": "address" },
			  {
				"internalType": "address",
				"name": "_currency",
				"type": "address"
			  },
			  { "internalType": "uint256", "name": "_amount", "type": "uint256" }
			],
			"name": "ownerWithdraw",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_synthAmount",
				"type": "uint256"
			  }
			],
			"name": "refundSynth",
			"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": "pure",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "_router", "type": "address" }
			],
			"name": "setRouter",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_wrappedNative",
				"type": "address"
			  }
			],
			"name": "setWrappedNative",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_sourceNativeAmount",
				"type": "uint256"
			  }
			],
			"name": "swapNativeToSynth",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "swapRouter",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_sourceSynthAmount",
				"type": "uint256"
			  }
			],
			"name": "swapSynthToNative",
			"outputs": [
			  { "internalType": "uint256", "name": "", "type": "uint256" }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "wrappedNative",
			"outputs": [
			  { "internalType": "address", "name": "", "type": "address" }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  { "stateMutability": "payable", "type": "receive" }
		]
	  },
	  "SynthrSwapWithDex": {
		"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"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_originalCurrencyKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_originalSynthKey",
						"type": "bytes32"
					}
				],
				"name": "RemoveNativeAssetByChain",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_nativeCurrencyKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_nativeSynth",
						"type": "bytes32"
					}
				],
				"name": "SetNativeAssetByChain",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_destSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_swappedNativeAmount",
						"type": "uint256"
					}
				],
				"name": "SwapNativeToNative",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "string",
						"name": "reason",
						"type": "string"
					}
				],
				"name": "SwapNativeToNativeFailed",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_swappedSynthAmount",
						"type": "uint256"
					}
				],
				"name": "SwapNativeToSynth",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "SwapSourceNativeToNative",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "SwapSourceNativeToSynth",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "SwapSourceSynthToNative",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_destSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_swappedNativeAmount",
						"type": "uint256"
					}
				],
				"name": "SwapSynthToNative",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "string",
						"name": "reason",
						"type": "string"
					}
				],
				"name": "SwapSynthToNativeFailed",
				"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"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_sourceAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_destKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_destAmount",
						"type": "uint256"
					}
				],
				"name": "destSwapNativeToNative",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "nonpayable",
				"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": "uint256",
						"name": "_destAmount",
						"type": "uint256"
					}
				],
				"name": "destSwapNativeToSynth",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_destSynthAmount",
						"type": "uint256"
					}
				],
				"name": "destSwapSynthToNative",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"name": "equivalentCurrencyKey",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"name": "equivalentSynthKey",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "getSwapNativeToNativeLZFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "getSwapNativeToSynthLZFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_sourceAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "getSwapSynthToNativeLZFee",
				"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": "uint16",
						"name": "",
						"type": "uint16"
					}
				],
				"name": "nativeSynthPerChain",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"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": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "removeNativeAsset",
				"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": "pure",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"internalType": "bytes32",
						"name": "_nativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_nativeSynth",
						"type": "bytes32"
					}
				],
				"name": "setNativeAsset",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "bytes[]",
						"name": "_priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"name": "swapNativeToNative",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "bytes[]",
						"name": "_priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"name": "swapNativeToSynth",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "bytes[]",
						"name": "_priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"name": "swapSynthToNative",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"stateMutability": "payable",
				"type": "receive"
			}
		]
	  },
	  "DexAggregator": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_nativeKey",
				"type": "bytes32"
			  }
			],
			"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": "bytes32",
				"name": "_sourceNativeKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_sourceNativeAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "_destSynthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_swappedSynthAmount",
				"type": "uint256"
			  }
			],
			"name": "DexSwapNativeToSynthOn0x",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "_sourceSynthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_sourceSynthAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "_destNativeKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_swappedNativeAmount",
				"type": "uint256"
			  }
			],
			"name": "DexSwapSynthToNativeOn0x",
			"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": "_to",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "_currency",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "OwnerWithdraw",
			"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": [],
			"name": "nativeKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"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": "_to",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_currency",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "ownerWithdraw",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_synthAmount",
				"type": "uint256"
			  }
			],
			"name": "refundSynth",
			"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": "pure",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_nativeKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_nativeAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "bytes32",
				"name": "_destSynthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "_target",
				"type": "address"
			  },
			  {
				"internalType": "bytes",
				"name": "_data",
				"type": "bytes"
			  }
			],
			"name": "swapNativeToSynthOn0X",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_synthAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "address",
				"name": "_target",
				"type": "address"
			  },
			  {
				"internalType": "bytes",
				"name": "_data",
				"type": "bytes"
			  }
			],
			"name": "swapSynthToNativeOn0X",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"stateMutability": "payable",
			"type": "receive"
		  }
		]
	  },
	  "SynthrSwap": {
		"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"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_originalCurrencyKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_originalSynthKey",
						"type": "bytes32"
					}
				],
				"name": "RemoveNativeAssetByChain",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_nativeCurrencyKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_nativeSynth",
						"type": "bytes32"
					}
				],
				"name": "SetNativeAssetByChain",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "string",
						"name": "reason",
						"type": "string"
					}
				],
				"name": "SwapNativeToNativeFailedOn0x",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_destSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_swappedNativeAmount",
						"type": "uint256"
					}
				],
				"name": "SwapNativeToNativeOn0x",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_swappedSynthAmount",
						"type": "uint256"
					}
				],
				"name": "SwapNativeToSynthOn0x",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "SwapSourceNativeToNativeOn0x",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "SwapSourceNativeToSynthOn0x",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "SwapSourceSynthToNativeOn0x",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "string",
						"name": "reason",
						"type": "string"
					}
				],
				"name": "SwapSynthToNativeFailedOn0x",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_destSynthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "_swappedNativeAmount",
						"type": "uint256"
					}
				],
				"name": "SwapSynthToNativeOn0x",
				"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"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_destSynthAmount",
						"type": "uint256"
					},
					{
						"internalType": "address",
						"name": "_target",
						"type": "address"
					},
					{
						"internalType": "bytes",
						"name": "_data",
						"type": "bytes"
					}
				],
				"name": "destSwapNativeToNative",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "nonpayable",
				"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": "uint256",
						"name": "_destAmount",
						"type": "uint256"
					}
				],
				"name": "destSwapNativeToSynth",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_destSynthAmount",
						"type": "uint256"
					},
					{
						"internalType": "address",
						"name": "_target",
						"type": "address"
					},
					{
						"internalType": "bytes",
						"name": "_data",
						"type": "bytes"
					}
				],
				"name": "destSwapSynthToNative",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"name": "equivalentCurrencyKey",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"name": "equivalentSynthKey",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "address",
						"name": "_target",
						"type": "address"
					},
					{
						"internalType": "bytes",
						"name": "_data",
						"type": "bytes"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "getSwapNativeToNativeLZFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "address",
						"name": "_target",
						"type": "address"
					},
					{
						"internalType": "bytes",
						"name": "_data",
						"type": "bytes"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "getSwapNativeToSynthLZFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_sourceAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "address",
						"name": "_target",
						"type": "address"
					},
					{
						"internalType": "bytes",
						"name": "_data",
						"type": "bytes"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "getSwapSynthToNativeLZFee",
				"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": "uint16",
						"name": "",
						"type": "uint16"
					}
				],
				"name": "nativeSynthPerChain",
				"outputs": [
					{
						"internalType": "bytes32",
						"name": "",
						"type": "bytes32"
					}
				],
				"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": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "removeNativeAsset",
				"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": "pure",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"internalType": "bytes32",
						"name": "_nativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_nativeSynth",
						"type": "bytes32"
					}
				],
				"name": "setNativeAsset",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "address[]",
						"name": "_targets",
						"type": "address[]"
					},
					{
						"internalType": "bytes[]",
						"name": "_callData",
						"type": "bytes[]"
					},
					{
						"internalType": "bytes[]",
						"name": "_priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"name": "swapNativeToNative",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_sourceNativeAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "address[]",
						"name": "_targets",
						"type": "address[]"
					},
					{
						"internalType": "bytes[]",
						"name": "_data",
						"type": "bytes[]"
					},
					{
						"internalType": "bytes[]",
						"name": "_priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"name": "swapNativeToSynth",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_sourceSynthAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_sourceSynthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_destNativeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "address[]",
						"name": "_targets",
						"type": "address[]"
					},
					{
						"internalType": "bytes[]",
						"name": "_data",
						"type": "bytes[]"
					},
					{
						"internalType": "bytes[]",
						"name": "_priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"name": "swapSynthToNative",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"stateMutability": "payable",
				"type": "receive"
			}
		]
	  },
	  "SynthToken": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "contract IRewardsDistribution",
				"name": "_rewardsDistribution",
				"type": "address"
			  },
			  {
				"internalType": "contract ISupplySchedule",
				"name": "_supplySchedule",
				"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": "previousOwner",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "OwnershipTransferred",
			"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": "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": "amount",
				"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": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "subtractedValue",
				"type": "uint256"
			  }
			],
			"name": "decreaseAllowance",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "spender",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "addedValue",
				"type": "uint256"
			  }
			],
			"name": "increaseAllowance",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "mint",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "name",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "owner",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "ownerMint",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "renounceOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "contract IRewardsDistribution",
				"name": "_rewardsDistribution",
				"type": "address"
			  },
			  {
				"internalType": "contract ISupplySchedule",
				"name": "_supplySchedule",
				"type": "address"
			  }
			],
			"name": "setAssociatedContracts",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "symbol",
			"outputs": [
			  {
				"internalType": "string",
				"name": "",
				"type": "string"
			  }
			],
			"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": "amount",
				"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": "amount",
				"type": "uint256"
			  }
			],
			"name": "transferFrom",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "newOwner",
				"type": "address"
			  }
			],
			"name": "transferOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  }
		]
	  },
	  "FuturesMarketSettings": {
		"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": "uint256",
						"name": "bps",
						"type": "uint256"
					}
				],
				"name": "LiquidationBufferRatioUpdated",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "bps",
						"type": "uint256"
					}
				],
				"name": "LiquidationFeeRatioUpdated",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "minMargin",
						"type": "uint256"
					}
				],
				"name": "MinInitialMarginUpdated",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "sUSD",
						"type": "uint256"
					}
				],
				"name": "MinKeeperFeeUpdated",
				"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": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": true,
						"internalType": "bytes32",
						"name": "parameter",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "value",
						"type": "uint256"
					}
				],
				"name": "ParameterUpdated",
				"type": "event"
			},
			{
				"inputs": [],
				"name": "acceptOwnership",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "isResolverCached",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "liquidationBufferRatio",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "liquidationFeeRatio",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "makerFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "makerFeeNextPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "maxFundingRate",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "maxLeverage",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "maxMarketValueUSD",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "minInitialMargin",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "minKeeperFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "nextPriceConfirmWindow",
				"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": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "parameters",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "takerFee",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "makerFee",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "takerFeeNextPrice",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "makerFeeNextPrice",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "nextPriceConfirmWindow",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "maxLeverage",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "maxMarketValueUSD",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "maxFundingRate",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "skewScaleUSD",
						"type": "uint256"
					}
				],
				"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": "_ratio",
						"type": "uint256"
					}
				],
				"name": "setLiquidationBufferRatio",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_ratio",
						"type": "uint256"
					}
				],
				"name": "setLiquidationFeeRatio",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_makerFee",
						"type": "uint256"
					}
				],
				"name": "setMakerFee",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_makerFeeNextPrice",
						"type": "uint256"
					}
				],
				"name": "setMakerFeeNextPrice",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_maxFundingRate",
						"type": "uint256"
					}
				],
				"name": "setMaxFundingRate",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_maxLeverage",
						"type": "uint256"
					}
				],
				"name": "setMaxLeverage",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_maxMarketValueUSD",
						"type": "uint256"
					}
				],
				"name": "setMaxMarketValueUSD",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_minMargin",
						"type": "uint256"
					}
				],
				"name": "setMinInitialMargin",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_sUSD",
						"type": "uint256"
					}
				],
				"name": "setMinKeeperFee",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_nextPriceConfirmWindow",
						"type": "uint256"
					}
				],
				"name": "setNextPriceConfirmWindow",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_takerFee",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_makerFee",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_takerFeeNextPrice",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_makerFeeNextPrice",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_nextPriceConfirmWindow",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_maxLeverage",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_maxMarketValueUSD",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_maxFundingRate",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_skewScaleUSD",
						"type": "uint256"
					}
				],
				"name": "setParameters",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_skewScaleUSD",
						"type": "uint256"
					}
				],
				"name": "setSkewScaleUSD",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_takerFee",
						"type": "uint256"
					}
				],
				"name": "setTakerFee",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_takerFeeNextPrice",
						"type": "uint256"
					}
				],
				"name": "setTakerFeeNextPrice",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "skewScaleUSD",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "takerFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "takerFeeNextPrice",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			}
		]
	  },
	  "SynthManager": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_owner",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_wrappedSynthr",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_synthToken",
				"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": true,
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "TransferSYNTH",
			"type": "event"
		  },
		  {
			"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": "address",
				"name": "_synthToken",
				"type": "address"
			  }
			],
			"name": "setSynthToken",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_wrappedSynthr",
				"type": "address"
			  }
			],
			"name": "setWrappedSynthr",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "synthToken",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_to",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "transferSynth",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "wrappedSynthr",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  }
		]
	  },
	  "FuturesMarket": {
		"abi": [
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_resolver",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "_baseAsset",
				"type": "bytes32"
			  },
			  {
				"internalType": "bytes32",
				"name": "_marketKey",
				"type": "bytes32"
			  }
			],
			"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": "int256",
				"name": "funding",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "index",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "timestamp",
				"type": "uint256"
			  }
			],
			"name": "FundingRecomputed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "baseAsset",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  }
			],
			"name": "FuturesTracking",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "marginDelta",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "bool",
				"name": "isReceived",
				"type": "bool"
			  }
			],
			"name": "MarginTransferred",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "currentRoundId",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "targetRoundId",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "commitDeposit",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "keeperDeposit",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  }
			],
			"name": "NextPriceOrderRemoved",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "targetRoundId",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "commitDeposit",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "keeperDeposit",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  }
			],
			"name": "NextPriceOrderSubmitted",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "liquidator",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "size",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "price",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  }
			],
			"name": "PositionLiquidated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "uint256",
				"name": "id",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "margin",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "size",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "tradeSize",
				"type": "int256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "lastPrice",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fundingIndex",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  }
			],
			"name": "PositionModified",
			"type": "event"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "accessibleMargin",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "marginAccessible",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "accruedFunding",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "funding",
				"type": "int256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "assetPrice",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "price",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "baseAsset",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "canLiquidate",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "cancelNextPriceOrder",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "closePosition",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  }
			],
			"name": "closePositionWithTracking",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "currentFundingRate",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "marginDelta",
				"type": "uint256"
			  }
			],
			"name": "destTransferMargin",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "executeNextPriceOrder",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "fundingLastRecomputed",
			"outputs": [
			  {
				"internalType": "uint32",
				"name": "",
				"type": "uint32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "fundingSequence",
			"outputs": [
			  {
				"internalType": "int128",
				"name": "",
				"type": "int128"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "fundingSequenceLength",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_account",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_marginDelta",
				"type": "uint256"
			  },
			  {
				"internalType": "uint16",
				"name": "_destChainId",
				"type": "uint16"
			  }
			],
			"name": "getSendWithdrawMargin",
			"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": "account",
				"type": "address"
			  }
			],
			"name": "liquidatePosition",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "liquidationFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "liquidationPrice",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "price",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "marketDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "debt",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "marketKey",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "marketSize",
			"outputs": [
			  {
				"internalType": "uint128",
				"name": "",
				"type": "uint128"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "marketSizes",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "long",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "short",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "marketSkew",
			"outputs": [
			  {
				"internalType": "int128",
				"name": "",
				"type": "int128"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  }
			],
			"name": "modifyPosition",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  },
			  {
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  }
			],
			"name": "modifyPositionWithTracking",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "nextPriceOrders",
			"outputs": [
			  {
				"internalType": "int128",
				"name": "sizeDelta",
				"type": "int128"
			  },
			  {
				"internalType": "uint128",
				"name": "targetRoundId",
				"type": "uint128"
			  },
			  {
				"internalType": "uint128",
				"name": "commitDeposit",
				"type": "uint128"
			  },
			  {
				"internalType": "uint128",
				"name": "keeperDeposit",
				"type": "uint128"
			  },
			  {
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "notionalValue",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "value",
				"type": "int256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  }
			],
			"name": "orderFee",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"name": "positions",
			"outputs": [
			  {
				"internalType": "uint64",
				"name": "id",
				"type": "uint64"
			  },
			  {
				"internalType": "uint64",
				"name": "lastFundingIndex",
				"type": "uint64"
			  },
			  {
				"internalType": "uint128",
				"name": "margin",
				"type": "uint128"
			  },
			  {
				"internalType": "uint128",
				"name": "lastPrice",
				"type": "uint128"
			  },
			  {
				"internalType": "int128",
				"name": "size",
				"type": "int128"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  },
			  {
				"internalType": "address",
				"name": "sender",
				"type": "address"
			  }
			],
			"name": "postTradeDetails",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "margin",
				"type": "uint256"
			  },
			  {
				"internalType": "int256",
				"name": "size",
				"type": "int256"
			  },
			  {
				"internalType": "uint256",
				"name": "price",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "liqPrice",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  },
			  {
				"internalType": "enum IFuturesMarketBaseTypes.Status",
				"name": "status",
				"type": "uint8"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "profitLoss",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "pnl",
				"type": "int256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "rebuildCache",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "recomputeFunding",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "lastIndex",
				"type": "uint256"
			  }
			],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "account",
				"type": "address"
			  }
			],
			"name": "remainingMargin",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "marginRemaining",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"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": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  }
			],
			"name": "submitNextPriceOrder",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "int256",
				"name": "sizeDelta",
				"type": "int256"
			  },
			  {
				"internalType": "bytes32",
				"name": "trackingCode",
				"type": "bytes32"
			  }
			],
			"name": "submitNextPriceOrderWithTracking",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "int256",
				"name": "marginDelta",
				"type": "int256"
			  },
			  {
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "transferMargin",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "unrecordedFunding",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "funding",
				"type": "int256"
			  },
			  {
				"internalType": "bool",
				"name": "invalid",
				"type": "bool"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "withdrawAllMargin",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  }
		]
	  },
	  "SynthrDebtShare": {
		"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"
		  }
		]
	  },
	  "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_CROSS_DOMAIN_GAS_LIMIT",
			"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_FEE_PERIOD_DURATION",
			"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_LIQUIDATION_DELAY",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_LIQUIDATION_FIX_FACTOR",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_LIQUIDATION_PENALTY",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_LIQUIDATION_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": "MAX_WRAPPER_BURN_FEE_RATE",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MAX_WRAPPER_MINT_FEE_RATE",
			"outputs": [
			  {
				"internalType": "int256",
				"name": "",
				"type": "int256"
			  }
			],
			"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": "MIN_CROSS_DOMAIN_GAS_LIMIT",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MIN_FEE_PERIOD_DURATION",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "MIN_LIQUIDATION_DELAY",
			"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": true,
				"internalType": "bytes32",
				"name": "bridgeName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "bridgeAddress",
				"type": "address"
			  }
			],
			"name": "AddBridge",
			"type": "event"
		  },
		  {
			"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"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "bridgeName",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "address",
				"name": "bridgeAddress",
				"type": "address"
			  }
			],
			"name": "RemoveBridge",
			"type": "event"
		  },
		  {
			"inputs": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "bridgeName",
				"type": "bytes32"
			  },
			  {
				"internalType": "address",
				"name": "bridgeAddress",
				"type": "address"
			  }
			],
			"name": "addAvailableBridge",
			"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": "",
				"type": "bytes32"
			  }
			],
			"name": "availableBridge",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"name": "bridgeList",
			"outputs": [
			  {
				"internalType": "bytes32",
				"name": "",
				"type": "bytes32"
			  }
			],
			"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": "bridgeName",
				"type": "bytes32"
			  }
			],
			"name": "getAvailableBridge",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "getBridgeList",
			"outputs": [
			  {
				"internalType": "bytes32[]",
				"name": "",
				"type": "bytes32[]"
			  }
			],
			"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": "",
				"type": "address"
			  }
			],
			"name": "isBridge",
			"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": "contract MixinResolver[]",
				"name": "destinations",
				"type": "address[]"
			  }
			],
			"name": "rebuildCaches",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "bridgeName",
				"type": "bytes32"
			  }
			],
			"name": "removeAvailableBridge",
			"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": "_owner",
				"type": "address"
			  },
			  {
				"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": "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": "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": [],
			"name": "acceptOwnership",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"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": [
			  {
				"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": "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": "contract IAddressResolver",
				"name": "_resolver",
				"type": "address"
			  }
			],
			"name": "setResolver",
			"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": "collapseFeeRate",
				"type": "uint256"
			  }
			],
			"name": "CollapseFeeRateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "value",
				"type": "uint256"
			  }
			],
			"name": "CrossChainSynthTransferEnabledUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "enum MixinSystemSettings.CrossDomainMessageGasLimits",
				"name": "gasLimitType",
				"type": "uint8"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newLimit",
				"type": "uint256"
			  }
			],
			"name": "CrossDomainMessageGasLimitChanged",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "debtSnapshotStaleTime",
				"type": "uint256"
			  }
			],
			"name": "DebtSnapshotStaleTimeUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  }
			],
			"name": "EtherWrapperBurnFeeRateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "maxETH",
				"type": "uint256"
			  }
			],
			"name": "EtherWrapperMaxETHUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  }
			],
			"name": "EtherWrapperMintFeeRateUpdated",
			"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": "uint256",
				"name": "newFeePeriodDuration",
				"type": "uint256"
			  }
			],
			"name": "FeePeriodDurationUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newReward",
				"type": "uint256"
			  }
			],
			"name": "FlagRewardUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newPenalty",
				"type": "uint256"
			  }
			],
			"name": "ForceLiquidationPenaltyUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "interactionDelay",
				"type": "uint256"
			  }
			],
			"name": "InteractionDelayUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newRatio",
				"type": "uint256"
			  }
			],
			"name": "IssuanceRatioUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newReward",
				"type": "uint256"
			  }
			],
			"name": "LiquidateRewardUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newDelay",
				"type": "uint256"
			  }
			],
			"name": "LiquidationDelayUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newDuration",
				"type": "uint256"
			  }
			],
			"name": "LiquidationEscrowDurationUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newFactor",
				"type": "uint256"
			  }
			],
			"name": "LiquidationFixFactorUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newPenalty",
				"type": "uint256"
			  }
			],
			"name": "LiquidationPenaltyUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newRatio",
				"type": "uint256"
			  }
			],
			"name": "LiquidationRatioUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "minimumStakeTime",
				"type": "uint256"
			  }
			],
			"name": "MinimumStakeTimeUpdated",
			"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": "newPenalty",
				"type": "uint256"
			  }
			],
			"name": "SelfLiquidationPenaltyUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "newTargetThreshold",
				"type": "uint256"
			  }
			],
			"name": "TargetThresholdUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "waitingPeriodSecs",
				"type": "uint256"
			  }
			],
			"name": "WaitingPeriodSecsUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "wrapper",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "rate",
				"type": "int256"
			  }
			],
			"name": "WrapperBurnFeeRateUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "wrapper",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "maxTokenAmount",
				"type": "uint256"
			  }
			],
			"name": "WrapperMaxTokenAmountUpdated",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "address",
				"name": "wrapper",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "int256",
				"name": "rate",
				"type": "int256"
			  }
			],
			"name": "WrapperMintFeeRateUpdated",
			"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": [
			  {
				"internalType": "address",
				"name": "collateral",
				"type": "address"
			  }
			],
			"name": "collapseFeeRate",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "crossChainSynthTransferEnabled",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "debtSnapshotStaleTime",
			"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": "feePeriodDuration",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "flagReward",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "forceLiquidationPenalty",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "collateral",
				"type": "address"
			  }
			],
			"name": "interactionDelay",
			"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": "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": "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": "liquidationFixFactor",
			"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": [],
			"name": "minimumStakeTime",
			"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": "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 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"
		  },
		  {
			"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": "address",
				"name": "_collateral",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_collapseFeeRate",
				"type": "uint256"
			  }
			],
			"name": "setCollapseFeeRate",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "_currencyKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "_value",
				"type": "uint256"
			  }
			],
			"name": "setCrossChainSynthTransferEnabled",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_seconds",
				"type": "uint256"
			  }
			],
			"name": "setDebtSnapshotStaleTime",
			"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": "_feePeriodDuration",
				"type": "uint256"
			  }
			],
			"name": "setFeePeriodDuration",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "reward",
				"type": "uint256"
			  }
			],
			"name": "setFlagReward",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "penalty",
				"type": "uint256"
			  }
			],
			"name": "setForceLiquidationPenalty",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_collateral",
				"type": "address"
			  },
			  {
				"internalType": "uint256",
				"name": "_interactionDelay",
				"type": "uint256"
			  }
			],
			"name": "setInteractionDelay",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "ratio",
				"type": "uint256"
			  }
			],
			"name": "setIssuanceRatio",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "reward",
				"type": "uint256"
			  }
			],
			"name": "setLiquidateReward",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "time",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationDelay",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "duration",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationEscrowDuration",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "factor",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationFixFactor",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "penalty",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationPenalty",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_liquidationRatio",
				"type": "uint256"
			  }
			],
			"name": "setLiquidationRatio",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_seconds",
				"type": "uint256"
			  }
			],
			"name": "setMinimumStakeTime",
			"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": "penalty",
				"type": "uint256"
			  }
			],
			"name": "setSelfLiquidationPenalty",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "percent",
				"type": "uint256"
			  }
			],
			"name": "setTargetThreshold",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_waitingPeriodSecs",
				"type": "uint256"
			  }
			],
			"name": "setWaitingPeriodSecs",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "targetThreshold",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"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": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "FuturesMarketResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "FuturesMarketSuspended",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "FuturesResumed",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "FuturesSuspended",
			"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_FUTURES",
			"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": "",
				"type": "bytes32"
			  }
			],
			"name": "futuresMarketSuspension",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "suspended",
				"type": "bool"
			  },
			  {
				"internalType": "uint248",
				"name": "reason",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "futuresSuspension",
			"outputs": [
			  {
				"internalType": "bool",
				"name": "suspended",
				"type": "bool"
			  },
			  {
				"internalType": "uint248",
				"name": "reason",
				"type": "uint248"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "marketKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "getFuturesMarketSuspensions",
			"outputs": [
			  {
				"internalType": "bool[]",
				"name": "suspensions",
				"type": "bool[]"
			  },
			  {
				"internalType": "uint256[]",
				"name": "reasons",
				"type": "uint256[]"
			  }
			],
			"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": "requireFuturesActive",
			"outputs": [],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  }
			],
			"name": "requireFuturesMarketActive",
			"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": "resumeFutures",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  }
			],
			"name": "resumeFuturesMarket",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "marketKeys",
				"type": "bytes32[]"
			  }
			],
			"name": "resumeFuturesMarkets",
			"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": "suspendFutures",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "marketKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendFuturesMarket",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32[]",
				"name": "marketKeys",
				"type": "bytes32[]"
			  },
			  {
				"internalType": "uint256",
				"name": "reason",
				"type": "uint256"
			  }
			],
			"name": "suspendFuturesMarkets",
			"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": "currencyKey",
				"type": "bytes32"
			  }
			],
			"name": "rateWithSafetyChecks",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "rate",
				"type": "uint256"
			  },
			  {
				"internalType": "bool",
				"name": "broken",
				"type": "bool"
			  },
			  {
				"internalType": "bool",
				"name": "staleOrInvalid",
				"type": "bool"
			  }
			],
			"stateMutability": "nonpayable",
			"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 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 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",
				"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": true,
				"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": true,
				"internalType": "address",
				"name": "veSynthHolderFeePool",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "veSynthFee",
				"type": "uint256"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "FEE_ADDRESS",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "debtHolderFee",
				"type": "uint256"
			  }
			],
			"name": "RecordOffChainExchangeFee",
			"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": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "bytes32",
				"name": "bridgeName",
				"type": "bytes32"
			  }
			],
			"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": [
			  {
				"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": "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": [
			  {
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  }
			],
			"name": "recordOffChainFeePaid",
			"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": "amount",
				"type": "uint256"
			  }
			],
			"name": "setRewardsToDistribute",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint16",
				"name": "_shareRate",
				"type": "uint16"
			  }
			],
			"name": "setVeSynthFeeShareRate",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "_pool",
				"type": "address"
			  }
			],
			"name": "setVeSynthHolderFeePool",
			"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"
		  },
		  {
			"inputs": [],
			"name": "veSynthFeeShareRate",
			"outputs": [
			  {
				"internalType": "uint16",
				"name": "",
				"type": "uint16"
			  }
			],
			"stateMutability": "view",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "veSynthHolderFeePool",
			"outputs": [
			  {
				"internalType": "address",
				"name": "",
				"type": "address"
			  }
			],
			"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"
		  }
		]
	  },
	  "Synthetix": {
		"abi": [
			{
				"inputs": [
					{
						"internalType": "contract ExternWrappedStateToken",
						"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": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "currencyKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "synthAmount",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "debtShare",
						"type": "uint256"
					}
				],
				"name": "DestBurn",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "string",
						"name": "message",
						"type": "string"
					}
				],
				"name": "DestBurnFailed",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": true,
						"internalType": "bytes32",
						"name": "marketKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "marginDelta",
						"type": "uint256"
					}
				],
				"name": "DestTransferMargin",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "string",
						"name": "message",
						"type": "string"
					}
				],
				"name": "DestTransferMarginFailed",
				"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"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					}
				],
				"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": "uint256",
						"name": "amount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "synthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					}
				],
				"name": "burnSynths",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "synthKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					}
				],
				"name": "burnSynthsToTarget",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "chainBalanceOf",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "chainBalanceOfPerKey",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					}
				],
				"name": "collateralCurrency",
				"outputs": [
					{
						"internalType": "address",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "decimals",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_synthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_synthAmount",
						"type": "uint256"
					}
				],
				"name": "destBurn",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_marginDelta",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_marketKey",
						"type": "bytes32"
					}
				],
				"name": "destTransferMargin",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "sourceCurrencyKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "sourceAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "destinationCurrencyKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"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": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"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": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_collateralAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "getSendWithdrawGasFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "_amount",
						"type": "uint256"
					}
				],
				"name": "initializeLiquidatorRewardsRestitution",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "isResolverCached",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "currencyKey",
						"type": "bytes32"
					}
				],
				"name": "isWaitingPeriod",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "issueMaxSynths",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_collateralAmount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_synthToMint",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "issueSynths",
				"outputs": [],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "liquidateDelinquentAccount",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "payable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "liquidateSelf",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "payable",
				"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": [
					{
						"internalType": "bytes32",
						"name": "sourceCurrencyKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "sourceAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "destinationCurrencyKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "bytes[]",
						"name": "priceUpdateData",
						"type": "bytes[]"
					},
					{
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "erc20Payment",
						"type": "bool"
					}
				],
				"name": "offChainExchange",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "amountReceived",
						"type": "uint256"
					}
				],
				"stateMutability": "payable",
				"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": "pure",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "restituted",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"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": [],
				"name": "symbol",
				"outputs": [
					{
						"internalType": "string",
						"name": "",
						"type": "string"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_collateralAmount",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"name": "withdrawCollateral",
				"outputs": [],
				"stateMutability": "payable",
				"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": true,
						"internalType": "address",
						"name": "toAddress",
						"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": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					}
				],
				"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": "currencyKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "amount",
						"type": "uint256"
					}
				],
				"name": "DestIssueForExchange",
				"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": true,
						"internalType": "address",
						"name": "toAddress",
						"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": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					}
				],
				"name": "SynthExchange",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": true,
						"internalType": "address",
						"name": "toAddress",
						"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": "uint256",
						"name": "fee",
						"type": "uint256"
					},
					{
						"indexed": false,
						"internalType": "uint16",
						"name": "destChainId",
						"type": "uint16"
					}
				],
				"name": "TrackingSynthExchange",
				"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": "bool",
								"name": "erc20Payment",
								"type": "bool"
							}
						],
						"internalType": "struct IExchanger.ExchangeArgs",
						"name": "args",
						"type": "tuple"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					}
				],
				"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": "bool",
								"name": "erc20Payment",
								"type": "bool"
							}
						],
						"internalType": "struct IExchanger.ExchangeArgs",
						"name": "args",
						"type": "tuple"
					},
					{
						"internalType": "bytes32",
						"name": "bridgeName",
						"type": "bytes32"
					}
				],
				"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": "bytes32",
						"name": "_bridgeName",
						"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 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": "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 AddressResolver",
				"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"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "debtShare",
						"type": "uint256"
					}
				],
				"name": "DestBurn",
				"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": true,
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes32",
						"name": "synthKey",
						"type": "bytes32"
					},
					{
						"indexed": false,
						"internalType": "uint256",
						"name": "synthAmount",
						"type": "uint256"
					}
				],
				"name": "SynthIssueFromSynthrSwap",
				"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": "allNetworksDebtInfo",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "debt",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "sharesSupply",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"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": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_erc20Payment",
						"type": "bool"
					}
				],
				"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": "from",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "synthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "amount",
						"type": "uint256"
					}
				],
				"name": "burnSynths",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "synthAmount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "debtShare",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "reclaimed",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "refunded",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "from",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "synthKey",
						"type": "bytes32"
					}
				],
				"name": "burnSynthsToTarget",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "synthAmount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "debtShare",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "reclaimed",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "refunded",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "currencyKey",
						"type": "bytes32"
					},
					{
						"internalType": "address",
						"name": "from",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "amount",
						"type": "uint256"
					}
				],
				"name": "burnSynthsWithoutDebt",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "burnAmount",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "canBurnSynths",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_issuer",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					}
				],
				"name": "checkFreeCollateral",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "withdrawableSynthr",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "collateral",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_issuer",
						"type": "address"
					}
				],
				"name": "collateralisationRatio",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "cratio",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_issuer",
						"type": "address"
					}
				],
				"name": "collateralisationRatioAndAnyRatesInvalid",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "cratio",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "anyRateIsInvalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_issuer",
						"type": "address"
					}
				],
				"name": "debtBalanceOf",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "debtBalance",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_synthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_synthAmount",
						"type": "uint256"
					}
				],
				"name": "destBurn",
				"outputs": [
					{
						"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": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					}
				],
				"name": "getSendBridgeSynthGasFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_isSelf",
						"type": "bool"
					}
				],
				"name": "getSendLiquidateGasFee",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "_synthToMint",
						"type": "uint256"
					},
					{
						"internalType": "bytes32",
						"name": "_bridgeName",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_destChainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_issueMax",
						"type": "bool"
					}
				],
				"name": "getSendMintGasFee",
				"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": [
					{
						"internalType": "address",
						"name": "_issuer",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_collateralAmount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "_cRatio",
						"type": "uint256"
					}
				],
				"name": "issuableSynthExpected",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "maxIssuable",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "issuanceRatio",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "from",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "destChainId",
						"type": "uint256"
					}
				],
				"name": "issueMaxSynths",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "synthAmount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "debtShare",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "from",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "amount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "destChainId",
						"type": "uint256"
					}
				],
				"name": "issueSynths",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "synthAmount",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "debtShare",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "lastDebtRatio",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "lastIssueEvent",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "isSelfLiquidation",
						"type": "bool"
					}
				],
				"name": "liquidateAccount",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "totalRedeemed",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "amountToLiquidate",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "sharesToRemove",
						"type": "uint256"
					}
				],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_collateralKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint16",
						"name": "_chainId",
						"type": "uint16"
					},
					{
						"internalType": "bool",
						"name": "_isSelfLiquidation",
						"type": "bool"
					}
				],
				"name": "liquidateAmount",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "totalRedeemed",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "amountToLiquidate",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "removeFlag",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_issuer",
						"type": "address"
					}
				],
				"name": "maxIssuableSynths",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "minimumStakeTime",
				"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": "_issuer",
						"type": "address"
					}
				],
				"name": "remainingIssuableSynths",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "maxIssuable",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "alreadyIssued",
						"type": "uint256"
					},
					{
						"internalType": "uint256",
						"name": "totalSystemDebt",
						"type": "uint256"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "currencyKey",
						"type": "bytes32"
					}
				],
				"name": "removeSynth",
				"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": "uint128",
						"name": "periodId",
						"type": "uint128"
					}
				],
				"name": "setCurrentPeriodId",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "uint256",
						"name": "ratio",
						"type": "uint256"
					}
				],
				"name": "setLastDebtRatio",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					},
					{
						"internalType": "bytes32",
						"name": "_synthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "_synthAmount",
						"type": "uint256"
					}
				],
				"name": "synthIssueFromSynthrSwap",
				"outputs": [],
				"stateMutability": "nonpayable",
				"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"
			},
			{
				"inputs": [
					{
						"internalType": "bytes32",
						"name": "currencyKey",
						"type": "bytes32"
					}
				],
				"name": "totalIssuedSynths",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "totalIssued",
						"type": "uint256"
					}
				],
				"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 AddressResolver",
				"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"
			  },
			  {
				"internalType": "uint256",
				"name": "_totalSupply",
				"type": "uint256"
			  }
			],
			"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"
		  },
		  {
			"inputs": [
			  {
				"internalType": "uint256",
				"name": "_amount",
				"type": "uint256"
			  }
			],
			"name": "setTotalSupply",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [],
			"name": "totalSupply",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"stateMutability": "view",
			"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": "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": [
			  {
				"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"
		  }
		]
	  },
	  "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 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": "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"
		  }
		]
	  },
	  "FuturesMarketManager": {
		"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": "endorsedAddress",
						"type": "address"
					}
				],
				"name": "EndorsedAddressAdded",
				"type": "event"
			},
			{
				"anonymous": false,
				"inputs": [
					{
						"indexed": false,
						"internalType": "address",
						"name": "endorsedAddress",
						"type": "address"
					}
				],
				"name": "EndorsedAddressRemoved",
				"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": "addresses",
						"type": "address[]"
					}
				],
				"name": "addEndorsedAddresses",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address[]",
						"name": "marketsToAdd",
						"type": "address[]"
					}
				],
				"name": "addMarkets",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address[]",
						"name": "marketsToAdd",
						"type": "address[]"
					}
				],
				"name": "addProxiedMarkets",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "allEndorsedAddresses",
				"outputs": [
					{
						"internalType": "address[]",
						"name": "",
						"type": "address[]"
					}
				],
				"stateMutability": "view",
				"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": "int256",
								"name": "currentFundingVelocity",
								"type": "int256"
							},
							{
								"internalType": "bool",
								"name": "priceInvalid",
								"type": "bool"
							},
							{
								"internalType": "bool",
								"name": "proxied",
								"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": "bool",
						"name": "proxiedMarkets",
						"type": "bool"
					}
				],
				"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": [
					{
						"internalType": "address",
						"name": "account",
						"type": "address"
					}
				],
				"name": "isEndorsed",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "_account",
						"type": "address"
					}
				],
				"name": "isMarketImplementation",
				"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": "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": "int256",
								"name": "currentFundingVelocity",
								"type": "int256"
							},
							{
								"internalType": "bool",
								"name": "priceInvalid",
								"type": "bool"
							},
							{
								"internalType": "bool",
								"name": "proxied",
								"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": "int256",
								"name": "currentFundingVelocity",
								"type": "int256"
							},
							{
								"internalType": "bool",
								"name": "priceInvalid",
								"type": "bool"
							},
							{
								"internalType": "bool",
								"name": "proxied",
								"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"
					},
					{
						"internalType": "bool",
						"name": "proxiedMarkets",
						"type": "bool"
					}
				],
				"name": "markets",
				"outputs": [
					{
						"internalType": "address[]",
						"name": "",
						"type": "address[]"
					}
				],
				"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": [
					{
						"internalType": "bool",
						"name": "proxiedMarkets",
						"type": "bool"
					}
				],
				"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": "addresses",
						"type": "address[]"
					}
				],
				"name": "removeEndorsedAddresses",
				"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": [
					{
						"internalType": "bytes32",
						"name": "bridgeKey",
						"type": "bytes32"
					},
					{
						"internalType": "bytes32",
						"name": "synthKey",
						"type": "bytes32"
					},
					{
						"internalType": "uint256",
						"name": "synthAmount",
						"type": "uint256"
					}
				],
				"name": "sendIncreaseSynth",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "totalDebt",
				"outputs": [
					{
						"internalType": "uint256",
						"name": "debt",
						"type": "uint256"
					},
					{
						"internalType": "bool",
						"name": "isInvalid",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address[]",
						"name": "marketsToUpdate",
						"type": "address[]"
					}
				],
				"name": "updateMarketsImplementations",
				"outputs": [],
				"stateMutability": "nonpayable",
				"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": [],
			"name": "totalIssueSynthWithoutMarketDebt",
			"outputs": [
			  {
				"internalType": "uint256",
				"name": "",
				"type": "uint256"
			  }
			],
			"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": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "dstChainId",
				"type": "uint16"
			  }
			],
			"name": "BridgeSynth",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  }
			],
			"name": "CollateralWithdraw",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "chainId",
				"type": "uint16"
			  }
			],
			"name": "DepositCollateral",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "collateralAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  }
			],
			"name": "Liquidate",
			"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": "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"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  }
			],
			"name": "SynthBurn",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "sourceAccount",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "sourceKey",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "destKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "sourceAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "destAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "fee",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "SynthExchange",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "address",
				"name": "account",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "SynthMint",
			"type": "event"
		  },
		  {
			"anonymous": false,
			"inputs": [
			  {
				"indexed": true,
				"internalType": "bytes32",
				"name": "currencyKey",
				"type": "bytes32"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "from",
				"type": "address"
			  },
			  {
				"indexed": true,
				"internalType": "address",
				"name": "to",
				"type": "address"
			  },
			  {
				"indexed": false,
				"internalType": "uint256",
				"name": "amount",
				"type": "uint256"
			  },
			  {
				"indexed": false,
				"internalType": "uint16",
				"name": "srcChainId",
				"type": "uint16"
			  }
			],
			"name": "SynthTransfer",
			"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": "addressResolver",
				"type": "address"
			  },
			  {
				"internalType": "address",
				"name": "_synthrAggregator",
				"type": "address"
			  },
			  {
				"internalType": "uint16",
				"name": "__selfLZChainId",
				"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": [],
			"name": "selfLZChainId",
			"outputs": [
			  { "internalType": "uint16", "name": "", "type": "uint16" }
			],
			"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": "dstChainId", "type": "uint16" }
			],
			"name": "sendBridgeSyToken",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  {
				"internalType": "address",
				"name": "accountForSynth",
				"type": "address"
			  },
			  {
				"internalType": "bytes32",
				"name": "synthKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "synthAmount",
				"type": "uint256"
			  },
			  {
				"internalType": "uint256",
				"name": "reclaimed",
				"type": "uint256"
			  },
			  { "internalType": "uint256", "name": "refund", "type": "uint256" }
			],
			"name": "sendBurn",
			"outputs": [],
			"stateMutability": "nonpayable",
			"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": "nonpayable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "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": "reclaimed",
				"type": "uint256"
			  },
			  { "internalType": "uint256", "name": "refund", "type": "uint256" },
			  { "internalType": "uint256", "name": "fee", "type": "uint256" },
			  {
				"internalType": "uint16",
				"name": "destChainId",
				"type": "uint16"
			  }
			],
			"name": "sendExchange",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  {
				"internalType": "uint256",
				"name": "collateralAmount",
				"type": "uint256"
			  },
			  { "internalType": "uint16", "name": "dstChainId", "type": "uint16" }
			],
			"name": "sendLiquidate",
			"outputs": [],
			"stateMutability": "payable",
			"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": "sendMint",
			"outputs": [],
			"stateMutability": "payable",
			"type": "function"
		  },
		  {
			"inputs": [
			  { "internalType": "address", "name": "account", "type": "address" },
			  {
				"internalType": "bytes32",
				"name": "collateralKey",
				"type": "bytes32"
			  },
			  { "internalType": "uint256", "name": "amount", "type": "uint256" },
			  { "internalType": "uint16", "name": "dstChainId", "type": "uint16" }
			],
			"name": "sendWithdraw",
			"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": [],
			"name": "synthrAggregator",
			"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": "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" }
		]
	  }
	}
  }
  