synthetix_kds
Version:
The smart contracts which make up the Synthetix system. (synthetix.io)
978 lines • 853 kB
JSON
{
"targets": {
"SafeDecimalMath": {
"name": "SafeDecimalMath",
"address": "0x0507143E46330766623deB5D0d6B598414C7ADde",
"source": "SafeDecimalMath",
"link": "https://ropsten.etherscan.io/address/0x0507143E46330766623deB5D0d6B598414C7ADde",
"timestamp": "2021-01-21T08:30:36.490Z",
"txn": "",
"network": "ropsten"
},
"Math": {
"name": "Math",
"address": "0x665dA658A1fC72A36A1aB7c6d30aef1f73C63D8A",
"source": "Math",
"link": "https://ropsten.etherscan.io/address/0x665dA658A1fC72A36A1aB7c6d30aef1f73C63D8A",
"timestamp": "2021-01-21T08:30:48.226Z",
"txn": "",
"network": "ropsten"
},
"AddressResolver": {
"name": "AddressResolver",
"address": "0x885975233b198496215c7B10000e2c0DC7Fd72a0",
"source": "AddressResolver",
"link": "https://ropsten.etherscan.io/address/0x885975233b198496215c7B10000e2c0DC7Fd72a0",
"timestamp": "2021-01-21T08:31:12.535Z",
"txn": "",
"network": "ropsten"
},
"ReadProxyAddressResolver": {
"name": "ReadProxyAddressResolver",
"address": "0x94ef401F0c03804e1B5D85cEAce3932f9aD21161",
"source": "ReadProxy",
"link": "https://ropsten.etherscan.io/address/0x94ef401F0c03804e1B5D85cEAce3932f9aD21161",
"timestamp": "2021-01-21T08:31:46.080Z",
"txn": "",
"network": "ropsten"
},
"FlexibleStorage": {
"name": "FlexibleStorage",
"address": "0xcB93188Aa931e4486A94bAF955c206c5Ce5C62DF",
"source": "FlexibleStorage",
"link": "https://ropsten.etherscan.io/address/0xcB93188Aa931e4486A94bAF955c206c5Ce5C62DF",
"timestamp": "2021-01-21T08:32:50.562Z",
"txn": "",
"network": "ropsten"
},
"SystemSettings": {
"name": "SystemSettings",
"address": "0x18526D3DFd941cD7016D929b7a149E6fDa5cFDCd",
"source": "SystemSettings",
"link": "https://ropsten.etherscan.io/address/0x18526D3DFd941cD7016D929b7a149E6fDa5cFDCd",
"timestamp": "2021-01-21T08:33:07.856Z",
"txn": "",
"network": "ropsten"
},
"SystemStatus": {
"name": "SystemStatus",
"address": "0xF502b7f9a6A3568847C19097A68D33dBbCBA448E",
"source": "SystemStatus",
"link": "https://ropsten.etherscan.io/address/0xF502b7f9a6A3568847C19097A68D33dBbCBA448E",
"timestamp": "2021-01-21T08:33:36.217Z",
"txn": "",
"network": "ropsten"
},
"ExchangeRates": {
"name": "ExchangeRates",
"address": "0x248e8576D69E2c8Ad32800255eafd2548Ac3E4d1",
"source": "ExchangeRates",
"link": "https://ropsten.etherscan.io/address/0x248e8576D69E2c8Ad32800255eafd2548Ac3E4d1",
"timestamp": "2021-01-21T08:33:43.477Z",
"txn": "",
"network": "ropsten"
},
"RewardEscrow": {
"name": "RewardEscrow",
"address": "0x89A4a3D8D5ae994Bc712a0c5827C5446010d4fcb",
"source": "RewardEscrow",
"link": "https://ropsten.etherscan.io/address/0x89A4a3D8D5ae994Bc712a0c5827C5446010d4fcb",
"timestamp": "2021-01-21T08:34:27.687Z",
"txn": "",
"network": "ropsten"
},
"RewardEscrowV2": {
"name": "RewardEscrowV2",
"address": "0x512415d0ec69c685548C3b76012E1d652d6588f2",
"source": "RewardEscrowV2",
"link": "https://ropsten.etherscan.io/address/0x512415d0ec69c685548C3b76012E1d652d6588f2",
"timestamp": "2021-01-21T08:34:36.051Z",
"txn": "",
"network": "ropsten"
},
"SynthetixEscrow": {
"name": "SynthetixEscrow",
"address": "0xb58C624898C2de2125165CC88d045c3Cd03F7171",
"source": "SynthetixEscrow",
"link": "https://ropsten.etherscan.io/address/0xb58C624898C2de2125165CC88d045c3Cd03F7171",
"timestamp": "2021-01-21T08:35:03.417Z",
"txn": "",
"network": "ropsten"
},
"SynthetixState": {
"name": "SynthetixState",
"address": "0xD9b0f8Ca8866ca3a703B445ae14e98DAd74b93dF",
"source": "SynthetixState",
"link": "https://ropsten.etherscan.io/address/0xD9b0f8Ca8866ca3a703B445ae14e98DAd74b93dF",
"timestamp": "2021-01-21T08:35:09.810Z",
"txn": "",
"network": "ropsten"
},
"ProxyFeePool": {
"name": "ProxyFeePool",
"address": "0xDA524B3889EC73d3CA8D115216D183116a324988",
"source": "Proxy",
"link": "https://ropsten.etherscan.io/address/0xDA524B3889EC73d3CA8D115216D183116a324988",
"timestamp": "2021-01-21T08:35:39.379Z",
"txn": "",
"network": "ropsten"
},
"DelegateApprovalsEternalStorage": {
"name": "DelegateApprovalsEternalStorage",
"address": "0xb793A4Fc9A1B82BB190B3a5CA621b3f4766C5050",
"source": "EternalStorage",
"link": "https://ropsten.etherscan.io/address/0xb793A4Fc9A1B82BB190B3a5CA621b3f4766C5050",
"timestamp": "2021-01-21T08:36:09.179Z",
"txn": "",
"network": "ropsten"
},
"DelegateApprovals": {
"name": "DelegateApprovals",
"address": "0x277140359095A2ce262Ed8DDF11c6F41E4debd5e",
"source": "DelegateApprovals",
"link": "https://ropsten.etherscan.io/address/0x277140359095A2ce262Ed8DDF11c6F41E4debd5e",
"timestamp": "2021-01-21T08:36:18.514Z",
"txn": "",
"network": "ropsten"
},
"Liquidations": {
"name": "Liquidations",
"address": "0x4C7f280a10C871425423543836e118A89ec68da2",
"source": "Liquidations",
"link": "https://ropsten.etherscan.io/address/0x4C7f280a10C871425423543836e118A89ec68da2",
"timestamp": "2021-01-21T08:37:02.329Z",
"txn": "",
"network": "ropsten"
},
"EternalStorageLiquidations": {
"name": "EternalStorageLiquidations",
"address": "0x1e83ccD9eC10C2e0Edea635ce6c411776a47Ae9a",
"source": "EternalStorage",
"link": "https://ropsten.etherscan.io/address/0x1e83ccD9eC10C2e0Edea635ce6c411776a47Ae9a",
"timestamp": "2021-01-21T08:37:25.691Z",
"txn": "",
"network": "ropsten"
},
"FeePoolEternalStorage": {
"name": "FeePoolEternalStorage",
"address": "0x327bED60D068dB4506220Ec6b9A90F4feE80e789",
"source": "FeePoolEternalStorage",
"link": "https://ropsten.etherscan.io/address/0x327bED60D068dB4506220Ec6b9A90F4feE80e789",
"timestamp": "2021-01-21T08:38:24.488Z",
"txn": "",
"network": "ropsten"
},
"FeePool": {
"name": "FeePool",
"address": "0x245198e4Cda7cFFe359d0752a0Ec26c7583c5eA9",
"source": "FeePool",
"link": "https://ropsten.etherscan.io/address/0x245198e4Cda7cFFe359d0752a0Ec26c7583c5eA9",
"timestamp": "2021-01-21T08:39:22.184Z",
"txn": "",
"network": "ropsten"
},
"FeePoolState": {
"name": "FeePoolState",
"address": "0x6A0E1dD1c0DB87A7C32a82B43f3800800A1c89E1",
"source": "FeePoolState",
"link": "https://ropsten.etherscan.io/address/0x6A0E1dD1c0DB87A7C32a82B43f3800800A1c89E1",
"timestamp": "2021-01-21T08:40:31.031Z",
"txn": "",
"network": "ropsten"
},
"RewardsDistribution": {
"name": "RewardsDistribution",
"address": "0x191257C00b5Eb930F5b7dc384A999cb0BdE97f34",
"source": "RewardsDistribution",
"link": "https://ropsten.etherscan.io/address/0x191257C00b5Eb930F5b7dc384A999cb0BdE97f34",
"timestamp": "2021-01-21T08:40:40.321Z",
"txn": "",
"network": "ropsten"
},
"ProxyERC20": {
"name": "ProxyERC20",
"address": "0x74C2BDeb9133EF1aa9BEC77C0Be8feFaCeB577e4",
"source": "ProxyERC20",
"link": "https://ropsten.etherscan.io/address/0x74C2BDeb9133EF1aa9BEC77C0Be8feFaCeB577e4",
"timestamp": "2021-01-21T08:40:57.899Z",
"txn": "",
"network": "ropsten"
},
"TokenStateSynthetix": {
"name": "TokenStateSynthetix",
"address": "0xC82bE6f674602655d195493E756439eea21Edf3e",
"source": "TokenState",
"link": "https://ropsten.etherscan.io/address/0xC82bE6f674602655d195493E756439eea21Edf3e",
"timestamp": "2021-01-21T08:42:02.568Z",
"txn": "",
"network": "ropsten"
},
"Synthetix": {
"name": "Synthetix",
"address": "0x58bbC93b07150887bB6Ba5Fa9040E3C9D4877DDf",
"source": "Synthetix",
"link": "https://ropsten.etherscan.io/address/0x58bbC93b07150887bB6Ba5Fa9040E3C9D4877DDf",
"timestamp": "2021-01-21T08:42:26.716Z",
"txn": "",
"network": "ropsten"
},
"ProxySynthetix": {
"name": "ProxySynthetix",
"address": "0x28013E9Fe1C77aDe8567E3A48EBDd49f6d56e0Af",
"source": "Proxy",
"link": "https://ropsten.etherscan.io/address/0x28013E9Fe1C77aDe8567E3A48EBDd49f6d56e0Af",
"timestamp": "2021-01-21T08:43:17.625Z",
"txn": "",
"network": "ropsten"
},
"DebtCache": {
"name": "DebtCache",
"address": "0x94eBa66681C6d6cE32a47B07e27F9C886E2AB507",
"source": "DebtCache",
"link": "https://ropsten.etherscan.io/address/0x94eBa66681C6d6cE32a47B07e27F9C886E2AB507",
"timestamp": "2021-01-21T08:43:47.058Z",
"txn": "",
"network": "ropsten"
},
"Exchanger": {
"name": "Exchanger",
"address": "0x3FEb38bcF4D2D28a3EEdFb9CaE2C6Cd700752288",
"source": "ExchangerWithVirtualSynth",
"link": "https://ropsten.etherscan.io/address/0x3FEb38bcF4D2D28a3EEdFb9CaE2C6Cd700752288",
"timestamp": "2021-01-21T08:44:04.148Z",
"txn": "",
"network": "ropsten"
},
"ExchangeState": {
"name": "ExchangeState",
"address": "0x4b1bEc98d37c0AB238aFd9649D607fcF394Ba6a8",
"source": "ExchangeState",
"link": "https://ropsten.etherscan.io/address/0x4b1bEc98d37c0AB238aFd9649D607fcF394Ba6a8",
"timestamp": "2021-01-21T08:44:11.468Z",
"txn": "",
"network": "ropsten"
},
"Issuer": {
"name": "Issuer",
"address": "0xe56aE7d8FB6f45e34703a09B3733F3387af00e90",
"source": "Issuer",
"link": "https://ropsten.etherscan.io/address/0xe56aE7d8FB6f45e34703a09B3733F3387af00e90",
"timestamp": "2021-01-21T08:45:49.073Z",
"txn": "",
"network": "ropsten"
},
"TradingRewards": {
"name": "TradingRewards",
"address": "0x8041f2763a8Bf1fE2ddb5872A785A7aADDaaCE75",
"source": "TradingRewards",
"link": "https://ropsten.etherscan.io/address/0x8041f2763a8Bf1fE2ddb5872A785A7aADDaaCE75",
"timestamp": "2021-01-21T08:46:05.184Z",
"txn": "",
"network": "ropsten"
},
"EscrowChecker": {
"name": "EscrowChecker",
"address": "0xf0dF03965D31D6D95961d88AB729da7db6BfD6ED",
"source": "EscrowChecker",
"link": "https://ropsten.etherscan.io/address/0xf0dF03965D31D6D95961d88AB729da7db6BfD6ED",
"timestamp": "2021-01-21T08:46:28.719Z",
"txn": "",
"network": "ropsten"
}
},
"sources": {
"SafeDecimalMath": {
"bytecode": "61012d610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361060655760003560e01c8063313ce56714606a578063864029e7146086578063907af6c014609e5780639d8e21771460a4578063d5e5e6e61460aa578063def4419d1460b0575b600080fd5b607060b6565b6040805160ff9092168252519081900360200190f35b608c60bb565b60408051918252519081900360200190f35b608c60cb565b608c60d7565b608c60e3565b607060f3565b601281565b6b033b2e3c9fd0803ce800000081565b670de0b6b3a764000090565b670de0b6b3a764000081565b6b033b2e3c9fd0803ce800000090565b601b8156fea265627a7a723158209f283950643843b6303c51f192e4f46fabdb0f579f67416f9d27db95afe8af9264736f6c63430005100032",
"abi": [
{
"constant": true,
"inputs": [],
"name": "PRECISE_UNIT",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x864029e7"
},
{
"constant": true,
"inputs": [],
"name": "UNIT",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x9d8e2177"
},
{
"constant": true,
"inputs": [],
"name": "decimals",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x313ce567"
},
{
"constant": true,
"inputs": [],
"name": "highPrecisionDecimals",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0xdef4419d"
},
{
"constant": true,
"inputs": [],
"name": "preciseUnit",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "pure",
"type": "function",
"signature": "0xd5e5e6e6"
},
{
"constant": true,
"inputs": [],
"name": "unit",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "pure",
"type": "function",
"signature": "0x907af6c0"
}
],
"source": {
"keccak256": "0x8406c1c67896f334676cfedd96a31eb55c23f1e9d4153de30bfc5eddfa22c0b5",
"urls": [
"bzz-raw://76b301b161758599aedd2587a00c4a18cd5d24e96ab32f8f18dbbca1e12b8462",
"dweb:/ipfs/QmQVauoKVbSHNWNshoZkWxMePWPZACGVoxA1v2GsggnZVB"
]
},
"metadata": {
"compiler": {
"version": "0.5.16+commit.9c3226ce"
},
"language": "Solidity",
"settings": {
"compilationTarget": {
"SafeDecimalMath.sol": "SafeDecimalMath"
},
"evmVersion": "istanbul",
"libraries": {},
"optimizer": {
"enabled": true,
"runs": 200
},
"remappings": []
},
"sources": {
"SafeDecimalMath.sol": {
"keccak256": "0x8406c1c67896f334676cfedd96a31eb55c23f1e9d4153de30bfc5eddfa22c0b5",
"urls": [
"bzz-raw://76b301b161758599aedd2587a00c4a18cd5d24e96ab32f8f18dbbca1e12b8462",
"dweb:/ipfs/QmQVauoKVbSHNWNshoZkWxMePWPZACGVoxA1v2GsggnZVB"
]
}
},
"version": 1
}
},
"Math": {
"bytecode": "60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158202a832e3ddd8e4a3e4722f91a9f7f0c7ee80872a006a52d03f6e3176a00cc9ed064736f6c63430005100032",
"abi": [],
"source": {
"keccak256": "0xc39ebf28d65885b91f0900eea387e002381d098c5ed65d4b3eb57b2413edec03",
"urls": [
"bzz-raw://7f4b7bcbc524c892fa636e5bfb73e8b3cec42c5c74839ed887976297ce234e3c",
"dweb:/ipfs/QmWoXRPKhngyz5i2iXdBHZURg6zDQRX3PoS7ts8D1gjpnr"
]
},
"metadata": {
"compiler": {
"version": "0.5.16+commit.9c3226ce"
},
"language": "Solidity",
"settings": {
"compilationTarget": {
"Math.sol": "Math"
},
"evmVersion": "istanbul",
"libraries": {},
"optimizer": {
"enabled": true,
"runs": 200
},
"remappings": []
},
"sources": {
"Math.sol": {
"keccak256": "0xc39ebf28d65885b91f0900eea387e002381d098c5ed65d4b3eb57b2413edec03",
"urls": [
"bzz-raw://7f4b7bcbc524c892fa636e5bfb73e8b3cec42c5c74839ed887976297ce234e3c",
"dweb:/ipfs/QmWoXRPKhngyz5i2iXdBHZURg6zDQRX3PoS7ts8D1gjpnr"
]
}
},
"version": 1
}
},
"AddressResolver": {
"bytecode": "608060405234801561001057600080fd5b50604051610ab9380380610ab98339818101604052602081101561003357600080fd5b5051806001600160a01b038116610091576040805162461bcd60e51b815260206004820152601960248201527f4f776e657220616464726573732063616e6e6f74206265203000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b038316908117825560408051928352602083019190915280517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c9281900390910190a150506109bf806100fa6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063766f781511610071578063766f78151461015157806379ba5097146101bf5780638da5cb5b146101c75780639f42102f146101cf578063ab0b8f77146102a1578063dacb2d011461035f576100a9565b80631627540c146100ae578063187f7935146100d657806321f8a7211461010f578063514560611461012c57806353a47bb714610149575b600080fd5b6100d4600480360360208110156100c457600080fd5b50356001600160a01b03166103d4565b005b6100f3600480360360208110156100ec57600080fd5b5035610430565b604080516001600160a01b039092168252519081900360200190f35b6100f36004803603602081101561012557600080fd5b503561044b565b6100f36004803603602081101561014257600080fd5b5035610466565b6100f361056e565b6100d46004803603602081101561016757600080fd5b810190602081018135600160201b81111561018157600080fd5b82018360208201111561019357600080fd5b803590602001918460208302840111600160201b831117156101b457600080fd5b50909250905061057d565b6100d4610607565b6100f36106c3565b61028d600480360360408110156101e557600080fd5b810190602081018135600160201b8111156101ff57600080fd5b82018360208201111561021157600080fd5b803590602001918460208302840111600160201b8311171561023257600080fd5b919390929091602081019035600160201b81111561024f57600080fd5b82018360208201111561026157600080fd5b803590602001918460208302840111600160201b8311171561028257600080fd5b5090925090506106d2565b604080519115158252519081900360200190f35b6100d4600480360360408110156102b757600080fd5b810190602081018135600160201b8111156102d157600080fd5b8201836020820111156102e357600080fd5b803590602001918460208302840111600160201b8311171561030457600080fd5b919390929091602081019035600160201b81111561032157600080fd5b82018360208201111561033357600080fd5b803590602001918460208302840111600160201b8311171561035457600080fd5b50909250905061075b565b6100f36004803603604081101561037557600080fd5b81359190810190604081016020820135600160201b81111561039657600080fd5b8201836020820111156103a857600080fd5b803590602001918460018302840111600160201b831117156103c957600080fd5b509092509050610867565b6103dc6108db565b600180546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce229181900360200190a150565b6002602052600090815260409020546001600160a01b031681565b6000908152600260205260409020546001600160a01b031690565b6524b9b9bab2b960d11b600090815260026020527f0651498423135bdecab48e2d306f14d560a72d49179b71410fd95b5d25ce349a546001600160a01b0316806104f7576040805162461bcd60e51b815260206004820152601a60248201527f43616e6e6f742066696e64204973737565722061646472657373000000000000604482015290519081900360640190fd5b806001600160a01b03166332608039846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561053b57600080fd5b505afa15801561054f573d6000803e3d6000fd5b505050506040513d602081101561056557600080fd5b50519392505050565b6001546001600160a01b031681565b60005b818110156106025782828281811061059457fe5b905060200201356001600160a01b03166001600160a01b031663741853606040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156105de57600080fd5b505af11580156105f2573d6000803e3d6000fd5b5050600190920191506105809050565b505050565b6001546001600160a01b031633146106505760405162461bcd60e51b81526004018080602001828103825260358152602001806109276035913960400191505060405180910390fd5b600054600154604080516001600160a01b03938416815292909116602083015280517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c9281900390910190a160018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6000546001600160a01b031681565b6000805b8481101561074d578383828181106106ea57fe5b905060200201356001600160a01b03166001600160a01b03166002600088888581811061071357fe5b60209081029290920135835250810191909152604001600020546001600160a01b031614610745576000915050610753565b6001016106d6565b50600190505b949350505050565b6107636108db565b8281146107b7576040805162461bcd60e51b815260206004820152601860248201527f496e707574206c656e67746873206d757374206d617463680000000000000000604482015290519081900360640190fd5b60005b838110156108605760008585838181106107d057fe5b90506020020135905060008484848181106107e757fe5b600085815260026020908152604091829020805493820295909501356001600160a01b03166001600160a01b03199093168317909455805186815293840182905280519194507fefe884cc7f82a6cf3cf68f64221519dcf96b5cae9048e1bb008ee32cd05aaa9193829003019150a150506001016107ba565b5050505050565b6000838152600260205260408120546001600160a01b03168383826108d05760405162461bcd60e51b815260206004820190815260248201839052908190604401848480828437600083820152604051601f909101601f19169092018290039550909350505050fd5b509095945050505050565b6000546001600160a01b031633146109245760405162461bcd60e51b815260040180806020018281038252602f81526020018061095c602f913960400191505060405180910390fd5b56fe596f75206d757374206265206e6f6d696e61746564206265666f726520796f752063616e20616363657074206f776e6572736869704f6e6c792074686520636f6e7472616374206f776e6572206d617920706572666f726d207468697320616374696f6ea265627a7a72315820cbd2670f2687f228c5ff46daa75cb0603d6c76f5fbd70632510c68d4b36a979b64736f6c63430005100032",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "_owner",
"type": "address"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor",
"signature": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bytes32",
"name": "name",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "address",
"name": "destination",
"type": "address"
}
],
"name": "AddressImported",
"type": "event",
"signature": "0xefe884cc7f82a6cf3cf68f64221519dcf96b5cae9048e1bb008ee32cd05aaa91"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerChanged",
"type": "event",
"signature": "0xb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerNominated",
"type": "event",
"signature": "0x906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce22"
},
{
"constant": false,
"inputs": [],
"name": "acceptOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0x79ba5097"
},
{
"constant": true,
"inputs": [
{
"internalType": "bytes32[]",
"name": "names",
"type": "bytes32[]"
},
{
"internalType": "address[]",
"name": "destinations",
"type": "address[]"
}
],
"name": "areAddressesImported",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x9f42102f"
},
{
"constant": true,
"inputs": [
{
"internalType": "bytes32",
"name": "name",
"type": "bytes32"
}
],
"name": "getAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x21f8a721"
},
{
"constant": true,
"inputs": [
{
"internalType": "bytes32",
"name": "key",
"type": "bytes32"
}
],
"name": "getSynth",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x51456061"
},
{
"constant": false,
"inputs": [
{
"internalType": "bytes32[]",
"name": "names",
"type": "bytes32[]"
},
{
"internalType": "address[]",
"name": "destinations",
"type": "address[]"
}
],
"name": "importAddresses",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0xab0b8f77"
},
{
"constant": false,
"inputs": [
{
"internalType": "address",
"name": "_owner",
"type": "address"
}
],
"name": "nominateNewOwner",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0x1627540c"
},
{
"constant": true,
"inputs": [],
"name": "nominatedOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x53a47bb7"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x8da5cb5b"
},
{
"constant": false,
"inputs": [
{
"internalType": "contract MixinResolver[]",
"name": "destinations",
"type": "address[]"
}
],
"name": "rebuildCaches",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0x766f7815"
},
{
"constant": true,
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"name": "repository",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x187f7935"
},
{
"constant": true,
"inputs": [
{
"internalType": "bytes32",
"name": "name",
"type": "bytes32"
},
{
"internalType": "string",
"name": "reason",
"type": "string"
}
],
"name": "requireAndGetAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0xdacb2d01"
}
],
"source": {
"keccak256": "0xccde4273f5b8b687e3af99e7a3b58a2cf73611a3a8c76e5e283ea5277cb16d72",
"urls": [
"bzz-raw://66b49e0945a9d1becb4e02bfbbd16ebd1df13aa640bef7219b3d1450e70a4c3b",
"dweb:/ipfs/QmRcxCGhAjDmzvj8GkFDCfGMHrT2jJL945zqYuVKo48W7B"
]
},
"metadata": {
"compiler": {
"version": "0.5.16+commit.9c3226ce"
},
"language": "Solidity",
"settings": {
"compilationTarget": {
"AddressResolver.sol": "AddressResolver"
},
"evmVersion": "istanbul",
"libraries": {},
"optimizer": {
"enabled": true,
"runs": 200
},
"remappings": []
},
"sources": {
"AddressResolver.sol": {
"keccak256": "0xccde4273f5b8b687e3af99e7a3b58a2cf73611a3a8c76e5e283ea5277cb16d72",
"urls": [
"bzz-raw://66b49e0945a9d1becb4e02bfbbd16ebd1df13aa640bef7219b3d1450e70a4c3b",
"dweb:/ipfs/QmRcxCGhAjDmzvj8GkFDCfGMHrT2jJL945zqYuVKo48W7B"
]
}
},
"version": 1
}
},
"ReadProxy": {
"bytecode": "608060405234801561001057600080fd5b506040516104953803806104958339818101604052602081101561003357600080fd5b5051806001600160a01b038116610091576040805162461bcd60e51b815260206004820152601960248201527f4f776e657220616464726573732063616e6e6f74206265203000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b038316908117825560408051928352602083019190915280517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c9281900390910190a1505061039b806100fa6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80631627540c1461008657806353a47bb7146100ae578063776d1a01146100d257806379ba5097146100f85780638da5cb5b14610100578063d4b8399214610108575b36600080376000803660006002545afa3d6000803e80610081573d6000fd5b3d6000f35b6100ac6004803603602081101561009c57600080fd5b50356001600160a01b0316610110565b005b6100b661016c565b604080516001600160a01b039092168252519081900360200190f35b6100ac600480360360208110156100e857600080fd5b50356001600160a01b031661017b565b6100ac6101dd565b6100b6610299565b6100b66102a8565b6101186102b7565b600180546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce229181900360200190a150565b6001546001600160a01b031681565b6101836102b7565b600280546001600160a01b0319166001600160a01b03838116919091179182905560408051929091168252517f814250a3b8c79fcbe2ead2c131c952a278491c8f4322a79fe84b5040a810373e916020908290030190a150565b6001546001600160a01b031633146102265760405162461bcd60e51b81526004018080602001828103825260358152602001806103036035913960400191505060405180910390fd5b600054600154604080516001600160a01b03938416815292909116602083015280517fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c9281900390910190a160018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6000546001600160a01b031681565b6002546001600160a01b031681565b6000546001600160a01b031633146103005760405162461bcd60e51b815260040180806020018281038252602f815260200180610338602f913960400191505060405180910390fd5b56fe596f75206d757374206265206e6f6d696e61746564206265666f726520796f752063616e20616363657074206f776e6572736869704f6e6c792074686520636f6e7472616374206f776e6572206d617920706572666f726d207468697320616374696f6ea265627a7a72315820c3b720070a448645585c1d01b50fd115fefef9d66e5b670e5a0f536e643b091864736f6c63430005100032",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "_owner",
"type": "address"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor",
"signature": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerChanged",
"type": "event",
"signature": "0xb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerNominated",
"type": "event",
"signature": "0x906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce22"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "newTarget",
"type": "address"
}
],
"name": "TargetUpdated",
"type": "event",
"signature": "0x814250a3b8c79fcbe2ead2c131c952a278491c8f4322a79fe84b5040a810373e"
},
{
"payable": false,
"stateMutability": "nonpayable",
"type": "fallback"
},
{
"constant": false,
"inputs": [],
"name": "acceptOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0x79ba5097"
},
{
"constant": false,
"inputs": [
{
"internalType": "address",
"name": "_owner",
"type": "address"
}
],
"name": "nominateNewOwner",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0x1627540c"
},
{
"constant": true,
"inputs": [],
"name": "nominatedOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x53a47bb7"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0x8da5cb5b"
},
{
"constant": false,
"inputs": [
{
"internalType": "address",
"name": "_target",
"type": "address"
}
],
"name": "setTarget",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function",
"signature": "0x776d1a01"
},
{
"constant": true,
"inputs": [],
"name": "target",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function",
"signature": "0xd4b83992"
}
],
"source": {
"keccak256": "0x0f47492c2ef0af7c5585141508c53024190f06b5c526430caca1cc91fac188a5",
"urls": [
"bzz-raw://2a5b99fc53091d9b5188ac0be8bde3ff6f3d5f0159cee894be2c3f547169f186",
"dweb:/ipfs/QmUHzChcTasUbfR2ESxmCB32zjWYkgrjPvbzComYPJaJ1C"
]
},
"metadata": {
"compiler": {
"version": "0.5.16+commit.9c3226ce"
},
"language": "Solidity",
"settings": {
"compilationTarget": {
"ReadProxy.sol": "ReadProxy"
},
"evmVersion": "istanbul",
"libraries": {},
"optimizer": {
"enabled": true,
"runs": 200
},
"remappings": []
},
"sources": {
"ReadProxy.sol": {
"keccak256": "0x0f47492c2ef0af7c5585141508c53024190f06b5c526430caca1cc91fac188a5",
"urls": [
"bzz-raw://2a5b99fc53091d9b5188ac0be8bde3ff6f3d5f0159cee894be2c3f547169f186",
"dweb:/ipfs/QmUHzChcTasUbfR2ESxmCB32zjWYkgrjPvbzComYPJaJ1C"
]
}
},
"version": 1
}
},
"FlexibleStorage": {
"bytecode": "608060405234801561001057600080fd5b506040516127833803806127838339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b031990921691909117905561271e806100656000396000f3fe608060405234801561001057600080fd5b50600436106101c35760003560e01c80638ca0adaf116100f9578063c89eb56211610097578063d994502d11610071578063d994502d146109c2578063f7833c5d146109f9578063f9c39d2f14610a1c578063fdfc4c1314610ae1576101c3565b8063c89eb562146108b7578063d658d2e91461097c578063d71a9b0114610999576101c3565b8063ab15985d116100d3578063ab15985d146106e5578063b67fa7ed146107aa578063c13a2b0c1461081f578063c4f610ed14610894576101c3565b80638ca0adaf1461062a5780638f6b95a31461069f5780639ee5955a146106c2576101c3565b806335ab2708116101665780634dca0978116101405780634dca0978146105345780635bda91e2146105665780636a59e495146105915780638408a5e5146105b5576101c3565b806335ab2708146104215780633bd6ad89146104445780633f28a6fc14610509576101c3565b80631625e3ef116101a25780631625e3ef1461037d57806318f662ed146103a05780631d5b277f146103c357806323257c2b146103ec576101c3565b80624b62d6146101c857806303cdc017146101f3578063142a391e146102b8575b600080fd5b6101f1600480360360608110156101de57600080fd5b5080359060208101359060400135610b04565b005b6101f16004803603606081101561020957600080fd5b81359190810190604081016020820135600160201b81111561022a57600080fd5b82018360208201111561023c57600080fd5b803590602001918460208302840111600160201b8311171561025d57600080fd5b919390929091602081019035600160201b81111561027a57600080fd5b82018360208201111561028c57600080fd5b803590602001918460208302840111600160201b831117156102ad57600080fd5b509092509050610bf4565b61032d600480360360408110156102ce57600080fd5b81359190810190604081016020820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460208302840111600160201b8311171561032257600080fd5b509092509050610d60565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015610369578181015183820152602001610351565b505050509050019250505060405180910390f35b6101f16004803603604081101561039357600080fd5b5080359060200135610e07565b6101f1600480360360408110156103b657600080fd5b5080359060200135610f7b565b6101f1600480360360608110156103d957600080fd5b50803590602081013590604001356110e4565b61040f6004803603604081101561040257600080fd5b50803590602001356111cd565b60408051918252519081900360200190f35b6101f16004803603604081101561043757600080fd5b50803590602001356111f4565b6101f16004803603606081101561045a57600080fd5b81359190810190604081016020820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460208302840111600160201b831117156104ae57600080fd5b919390929091602081019035600160201b8111156104cb57600080fd5b8201836020820111156104dd57600080fd5b803590602001918460208302840111600160201b831117156104fe57600080fd5b50909250905061135d565b6101f16004803603606081101561051f57600080fd5b508035906020810135906040013515156114c8565b6101f16004803603606081101561054a57600080fd5b50803590602081013590604001356001600160a01b03166115b1565b6101f16004803603606081101561057c57600080fd5b5080359060208101359060400135151561169a565b61059961184c565b604080516001600160a01b039092168252519081900360200190f35b61032d600480360360408110156105cb57600080fd5b81359190810190604081016020820135600160201b8111156105ec57600080fd5b8201836020820111156105fe57600080fd5b803590602001918460208302840111600160201b8311171561061f57600080fd5b50909250905061185b565b61032d6004803603604081101561064057600080fd5b81359190810190604081016020820135600160201b81111561066157600080fd5b82018360208201111561067357600080fd5b803590602001918460208302840111600160201b8311171561069457600080fd5b5090925090506118f7565b6101f1600480360360408110156106b557600080fd5b50803590602001356119b3565b610599600480360360408110156106d857600080fd5b5080359060200135611b32565b6101f1600480360360608110156106fb57600080fd5b81359190810190604081016020820135600160201b81111561071c57600080fd5b82018360208201111561072e57600080fd5b803590602001918460208302840111600160201b8311171561074f57600080fd5b919390929091602081019035600160201b81111561076c57600080fd5b82018360208201111561077e57600080fd5b803590602001918460208302840111600160201b8311171561079f57600080fd5b509092509050611b62565b61032d600480360360408110156107c057600080fd5b81359190810190604081016020820135600160201b8111156107e157600080fd5b8201836020820111156107f357600080fd5b803590602001918460208302840111600160201b8311171561081457600080fd5b509092509050611cc4565b61032d6004803603604081101561083557600080fd5b81359190810190604081016020820135600160201b81111561085657600080fd5b82018360208201111561086857600080fd5b803590602001918460208302840111600160201b8311171561088957600080fd5b509092509050611d60565b61040f600480360360408110156108aa57600080fd5b5080359060200135611e0e565b6101f1600480360360608110156108cd57600080fd5b81359190810190604081016020820135600160201b8111156108ee57600080fd5b82018360208201111561090057600080fd5b803590602001918460208302840111600160201b8311171561092157600080fd5b919390929091602081019035600160201b81111561093e57600080fd5b82018360208201111561095057600080fd5b803590602001918460208302840111600160201b8311171561097157600080fd5b509092509050611e35565b61040f6004803603602081101561099257600080fd5b5035611f97565b6101f1600480360360608110156109af57600080fd5b5080359060208101359060400135611fa9565b6109e5600480360360408110156109d857600080fd5b5080359060200135612092565b604080519115158252519081900360200190f35b61040f60048036036040811015610a0f57600080fd5b50803590602001356120bc565b6101f160048036036060811015610a3257600080fd5b81359190810190604081016020820135600160201b811115610a5357600080fd5b820183602082011115610a6557600080fd5b803590602001918460208302840111600160201b83111715610a8657600080fd5b919390929091602081019035600160201b811115610aa357600080fd5b820183602082011115610ab557600080fd5b803590602001918460208302840111600160201b83111715610ad657600080fd5b5090925090506120e3565b6101f160048036036040811015610af757600080fd5b5080359060200135612247565b600080546040805163dacb2d0160e01b815260048101878152602482019283526028604483018190528895946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b158015610b6d57600080fd5b505afa158015610b81573d6000803e3d6000fd5b505050506040513d6020811015610b9757600080fd5b505190506001600160a01b0381163314610be25760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b610bed8585856123b0565b5050505050565b600080546040805163dacb2d0160e01b815260048101898152602482019283526028604483018190528a95946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b158015610c5d57600080fd5b505afa158015610c71573d6000803e3d6000fd5b505050506040513d6020811015610c8757600080fd5b505190506001600160a01b0381163314610cd25760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b848314610d14576040805162461bcd60e51b815260206004820152601860248201526000805160206126ca833981519152604482015290519081900360640190fd5b60005b85811015610d5657610d4e88888884818110610d2f57fe5b90506020020135878785818110610d4257fe5b90506020020135612421565b600101610d17565b5050505050505050565b60608083839050604051908082528060200260200182016040528015610d90578160200160208202803883390190505b506000868152600160209081526040808320548352600390915281209192505b84811015610dfc57816000878784818110610dc757fe5b90506020020135815260200190815260200160002054838281518110610de957fe5b6020908102919091010152600101610db0565b509095945050505050565b600080546040805163dacb2d0160e01b815260048101868152602482019283526028604483018190528795946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b158015610e7057600080fd5b505afa158015610e84573d6000803e3d6000fd5b505050506040513d6020811015610e9a57600080fd5b505190506001600160a01b0381163314610ee55760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b60008481526001602090815260408083205483526005825280832086845282529182902054825187815291820186905260ff168015158284015291517f321123223c2c7bffd7484ae8fb80c6eb45aa5537df0a621c47833ab9376a4a9c9181900360600190a15050506000918252600160209081526040808420548452600582528084209284529190529020805460ff19169055565b600080546040805163dacb2d0160e01b815260048101868152602482019283526028604483018190528795946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b158015610fe457600080fd5b505afa158015610ff8573d6000803e3d6000fd5b505050506040513d602081101561100e57600080fd5b505190506001600160a01b03811633146110595760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b60008481526001602090815260408083205483526002825280832086845282529182902054825187815291820186905281830181905291517f8a6b612c1a1e056bc504f34fe56106a878fca2d1a50be35360d02ac39d4d46629181900360600190a1505050600091825260016020908152604080842054845260028252808420928452919052812055565b600080546040805163dacb2d0160e01b815260048101878152602482019283526028604483018190528895946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b15801561114d57600080fd5b505afa158015611161573d6000803e3d6000fd5b505050506040513d602081101561117757600080fd5b505190506001600160a01b03811633146111c25760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b610bed858585612421565b60009182526001602090815260408084205484526002825280842092845291905290205490565b600080546040805163dacb2d0160e01b815260048101868152602482019283526028604483018190528795946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b15801561125d57600080fd5b505afa158015611271573d6000803e3d6000fd5b505050506040513d602081101561128757600080fd5b505190506001600160a01b03811633146112d25760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b60008481526001602090815260408083205483526006825280832086845282529182902054825187815291820186905281830181905291517f1f751825a531bf2a176e42d5cb792bb7228163cf53e36b033509ccbe869cfd939181900360600190a1505050600091825260016020908152604080842054845260068252808420928452919052812055565b600080546040805163dacb2d0160e01b815260048101898152602482019283526028604483018190528a95946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b1580156113c657600080fd5b505afa1580156113da573d6000803e3d6000fd5b505050506040513d60208110156113f057600080fd5b505190506001600160a01b038116331461143b5760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b84831461147d576040805162461bcd60e51b815260206004820152601860248201526000805160206126ca833981519152604482015290519081900360640190fd5b60005b85811015610d56576114c08888888481811061149857fe5b905060200201358787858181106114ab57fe5b905060200201356001600160a01b0316612492565b600101611480565b600080546040805163dacb2d0160e01b815260048101878152602482019283526028604483018190528895946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b15801561153157600080fd5b505afa158015611545573d6000803e3d6000fd5b505050506040513d602081101561155b57600080fd5b505190506001600160a01b03811633146115a65760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b610bed85858561251b565b600080546040805163dacb2d0160e01b815260048101878152602482019283526028604483018190528895946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b15801561161a57600080fd5b505afa15801561162e573d6000803e3d6000fd5b505050506040513d602081101561164457600080fd5b505190506001600160a01b038116331461168f5760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b610bed858585612492565b600080546040805163dacb2d0160e01b815260048101878152602482019283526028604483018190528895946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b15801561170357600080fd5b505afa158015611717573d6000803e3d6000fd5b505050506040513d602081101561172d57600080fd5b505190506001600160a01b03811633146117785760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b6000858152600160205260409020546117d8576040805162461bcd60e51b815260206004820152601d60248201527f43616e6e6f74206d69677261746520656d70747920636f6e7472616374000000604482015290519081900360640190fd5b600085815260016020526040808220548683529120558215611804576000858152600160205260408120555b60408051868152602081018690528415158183015290517fa3db9c909daa141b61562c797dae4dc4b3d7751686068c98111db87b2a8c374c9181900360600190a15050505050565b6000546001600160a01b031681565b6060808383905060405190808252806020026020018201604052801561188b578160200160208202803883390190505b506000868152600160209081526040808320548352600690915281209192505b84811015610dfc578160008787848181106118c257fe5b905060200201358152602001908152602001600020548382815181106118e457fe5b60209081029190910101526001016118ab565b60608083839050604051908082528060200260200182016040528015611927578160200160208202803883390190505b506000868152600160209081526040808320548352600490915281209192505b84811015610dfc5781600087878481811061195e57fe5b90506020020135815260200190815260200160002060009054906101000a90046001600160a01b031683828151811061199357fe5b6001600160a01b0390921660209283029190910190910152600101611947565b600080546040805163dacb2d0160e01b815260048101868152602482019283526028604483018190528795946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b158015611a1c57600080fd5b505afa158015611a30573d6000803e3d6000fd5b505050506040513d6020811015611a4657600080fd5b505190506001600160a01b0381163314611a915760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b6000848152600160209081526040808320548352600482528083208684528252918290205482518781529182018690526001600160a01b031681830181905291517fec1140277b8f20820dc76b92216489238a207d5f22c964099303820fbd2bdf669181900360600190a1505050600091825260016020908152604080842054845260048252808420928452919052902080546001600160a01b0319169055565b6000918252600160209081526040808420548452600482528084209284529190529020546001600160a01b031690565b600080546040805163dacb2d0160e01b815260048101898152602482019283526028604483018190528a95946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b158015611bcb57600080fd5b505afa158015611bdf573d6000803e3d6000fd5b505050506040513d6020811015611bf557600080fd5b505190506001600160a01b0381163314611c405760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd5b848314611c82576040805162461bcd60e51b815260206004820152601860248201526000805160206126ca833981519152604482015290519081900360640190fd5b60005b85811015610d5657611cbc88888884818110611c9d57fe5b90506020020135878785818110611cb057fe5b9050602002013561259a565b600101611c85565b60608083839050604051908082528060200260200182016040528015611cf4578160200160208202803883390190505b506000868152600160209081526040808320548352600290915281209192505b84811015610dfc57816000878784818110611d2b57fe5b90506020020135815260200190815260200160002054838281518110611d4d57fe5b6020908102919091010152600101611d14565b60608083839050604051908082528060200260200182016040528015611d90578160200160208202803883390190505b506000868152600160209081526040808320548352600590915281209192505b84811015610dfc57816000878784818110611dc757fe5b90506020020135815260200190815260200160002060009054906101000a900460ff16838281518110611df657fe5b91151560209283029190910190910152600101611db0565b60009182526001602090815260408084205484526003825280842092845291905290205490565b600080546040805163dacb2d0160e01b815260048101898152602482019283526028604483018190528a95946001600160a01b03169363dacb2d019387939260649091019061267482396040019250505060206040518083038186803b158015611e9e57600080fd5b505afa158015611eb2573d6000803e3d6000fd5b505050506040513d6020811015611ec857600080fd5b505190506001600160a01b0381163314611f135760405162461bcd60e51b815260040180806020018281038252602e81526020018061269c602e913960400191505060405180910390fd