@backt/protocol
Version:
Backt smart contracts implementation
173 lines • 22 kB
JSON
{
"contractName": "Registry",
"abi": [
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "allCFDs",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
}
],
"name": "OwnershipRenounced",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"constant": true,
"inputs": [],
"name": "getCFDFactoryLatest",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_addr",
"type": "address"
}
],
"name": "setCFDFactoryLatest",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "getFees",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_addr",
"type": "address"
}
],
"name": "setFees",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_cfdAddr",
"type": "address"
}
],
"name": "addCFD",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610c51806100536000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630c5a95f81461009e57806323ec7f2a14610121578063715018a61461017857806376d00fd81461018f5780638da5cb5b146101d2578063a275b70414610229578063b4a869621461026c578063db8d55f1146102af578063f2fde38b14610306575b600080fd5b3480156100aa57600080fd5b506100df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610349565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561012d57600080fd5b5061013661037c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561018457600080fd5b5061018d6103c1565b005b34801561019b57600080fd5b506101d0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506104c3565b005b3480156101de57600080fd5b506101e7610686565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023557600080fd5b5061026a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106ab565b005b34801561027857600080fd5b506102ad600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610748565b005b3480156102bb57600080fd5b506102c46107e5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561031257600080fd5b50610347600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061082a565b005b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006103bc6040805190810160405280601081526020017f434644466163746f72794c617465737400000000000000000000000000000000815250610891565b905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561041c57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a260008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60006104cd61037c565b90508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614606060405190810160405280602881526020017f4f6e6c79206c61746573742043464420466163746f72792063616e206164642081526020017f6e65772043464473000000000000000000000000000000000000000000000000815250901515610603576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156105c85780820151818401526020810190506105ad565b50505050905090810190601f1680156105f55780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561070657600080fd5b6107456040805190810160405280600481526020017f4665657300000000000000000000000000000000000000000000000000000000815250826109a4565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107a357600080fd5b6107e26040805190810160405280601081526020017f434644466163746f72794c617465737400000000000000000000000000000000815250826109a4565b50565b60006108256040805190810160405280600481526020017f4665657300000000000000000000000000000000000000000000000000000000815250610891565b905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561088557600080fd5b61088e81610b2b565b50565b600060016000836040516020018082805190602001908083835b6020831015156108d057805182526020820191506020810190506020830392506108ab565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109395780518252602082019150602081019050602083039250610914565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156109ff57600080fd5b8060016000846040516020018082805190602001908083835b602083101515610a3d5780518252602082019150602081019050602083039250610a18565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610aa65780518252602082019150602081019050602083039250610a81565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610b6757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a723058206d303ce0b3892fc6a771406c83150ef04e402644dd7f3cb3eb4e82687c2f8c8e0029",
"deployedBytecode": "0x608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630c5a95f81461009e57806323ec7f2a14610121578063715018a61461017857806376d00fd81461018f5780638da5cb5b146101d2578063a275b70414610229578063b4a869621461026c578063db8d55f1146102af578063f2fde38b14610306575b600080fd5b3480156100aa57600080fd5b506100df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610349565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561012d57600080fd5b5061013661037c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561018457600080fd5b5061018d6103c1565b005b34801561019b57600080fd5b506101d0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506104c3565b005b3480156101de57600080fd5b506101e7610686565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023557600080fd5b5061026a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106ab565b005b34801561027857600080fd5b506102ad600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610748565b005b3480156102bb57600080fd5b506102c46107e5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561031257600080fd5b50610347600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061082a565b005b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006103bc6040805190810160405280601081526020017f434644466163746f72794c617465737400000000000000000000000000000000815250610891565b905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561041c57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a260008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60006104cd61037c565b90508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614606060405190810160405280602881526020017f4f6e6c79206c61746573742043464420466163746f72792063616e206164642081526020017f6e65772043464473000000000000000000000000000000000000000000000000815250901515610603576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156105c85780820151818401526020810190506105ad565b50505050905090810190601f1680156105f55780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561070657600080fd5b6107456040805190810160405280600481526020017f4665657300000000000000000000000000000000000000000000000000000000815250826109a4565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107a357600080fd5b6107e26040805190810160405280601081526020017f434644466163746f72794c617465737400000000000000000000000000000000815250826109a4565b50565b60006108256040805190810160405280600481526020017f4665657300000000000000000000000000000000000000000000000000000000815250610891565b905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561088557600080fd5b61088e81610b2b565b50565b600060016000836040516020018082805190602001908083835b6020831015156108d057805182526020820191506020810190506020830392506108ab565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109395780518252602082019150602081019050602083039250610914565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156109ff57600080fd5b8060016000846040516020018082805190602001908083835b602083101515610a3d5780518252602082019150602081019050602083039250610a18565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610aa65780518252602082019150602081019050602083039250610a81565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610b6757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a723058206d303ce0b3892fc6a771406c83150ef04e402644dd7f3cb3eb4e82687c2f8c8e0029",
"sourceMap": "141:1686:4:-;;;575:10:8;567:5;;:18;;;;;;;;;;;;;;;;;;141:1686:4;;;;;;",
"deployedSourceMap": "141:1686:4:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1468:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1468:42:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;323:108;;8:9:-1;5:2;;;30:1;27;20:12;5:2;323:108:4;;;;;;;;;;;;;;;;;;;;;;;;;;;1001:111:8;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1001:111:8;;;;;;1517:306:4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1517:306:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:8;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:8;;;;;;;;;;;;;;;;;;;;;;;;;;;641:84:4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;641:84:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;437:108;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:108:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;551:84;;8:9:-1;5:2;;;30:1;27;20:12;5:2;551:84:4;;;;;;;;;;;;;;;;;;;;;;;;;;;1274:103:8;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1274:103:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;1468:42:4;;;;;;;;;;;;;;;;;;;;;;:::o;323:108::-;375:7;401:23;;;;;;;;;;;;;;;;;;;:3;:23::i;:::-;394:30;;323:108;:::o;1001:111:8:-;719:5;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;1077:5;;;;;;;;;;;1058:25;;;;;;;;;;;;1105:1;1089:5;;:18;;;;;;;;;;;;;;;;;;1001:111::o;1517:306:4:-;1568:25;1596:21;:19;:21::i;:::-;1568:49;;1720:17;1706:31;;:10;:31;;;1739:29;;;;;;;;;;;;;;;;;;;;;;;1698:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1698:71:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1799:17;1779:7;:17;1787:8;1779:17;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;1517:306;;:::o;238:20:8:-;;;;;;;;;;;;;:::o;641:84:4:-;719:5:8;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;700:18:4;;;;;;;;;;;;;;;;;;;712:5;700:3;:18::i;:::-;641:84;:::o;437:108::-;719:5:8;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;508:30:4;;;;;;;;;;;;;;;;;;;532:5;508:3;:30::i;:::-;437:108;:::o;551:84::-;591:7;617:11;;;;;;;;;;;;;;;;;;;:3;:11::i;:::-;610:18;;551:84;:::o;1274:103:8:-;719:5;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;1343:29;1362:9;1343:18;:29::i;:::-;1274:103;:::o;867:132:4:-;916:12;947:9;:45;984:5;967:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;967:23:4;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;967:23:4;;;957:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;957:34:4;;;;;;;;;;;;;;;;947:45;;;;;;;;;;;;;;;;;;;;;;;;;;;940:52;;867:132;;;:::o;731:130::-;719:5:8;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;849:5:4;801:9;:45;838:5;821:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;821:23:4;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;821:23:4;;;811:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;811:34:4;;;;;;;;;;;;;;;;801:45;;;;;;;;;;;;;;;;;;:53;;;;;;;;;;;;;;;;;;731:130;;:::o;1512:171:8:-;1603:1;1582:23;;:9;:23;;;;1574:32;;;;;;;;1645:9;1617:38;;1638:5;;;;;;;;;;;1617:38;;;;;;;;;;;;1669:9;1661:5;;:17;;;;;;;;;;;;;;;;;;1512:171;:::o",
"source": "pragma solidity ^0.4.23;\npragma experimental \"v0.5.0\";\n\nimport \"openzeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./DBC.sol\";\n\ncontract Registry is DBC, Ownable {\n\n string constant REASON_MUST_BE_LATEST_FACTORY = \"Only latest CFD Factory can add new CFDs\";\n\n mapping(bytes32 => address) contracts;\n\n function getCFDFactoryLatest() public view returns (address) {\n return get(\"CFDFactoryLatest\");\n }\n\n function setCFDFactoryLatest(address _addr) public onlyOwner {\n set(\"CFDFactoryLatest\", _addr);\n }\n\n function getFees() public view returns (address) {\n return get(\"Fees\");\n }\n\n function setFees(address _addr) public onlyOwner {\n set(\"Fees\", _addr);\n }\n\n function set(string _name, address _addr) private onlyOwner {\n contracts[keccak256(abi.encodePacked(_name))] = _addr;\n }\n\n function get(string _name) private view returns (address addr) {\n addr = contracts[keccak256(abi.encodePacked(_name))];\n }\n\n\n /*\n * A registry of ALL CFDs created across any version set of the contracts.\n *\n * The mapping is from CFD address to CFDFactory that created it.\n *\n * The main reason to keep this is for the CFD upgrade mechansim to have a\n * way to know a given CFD was created correctly through the 0xFutures\n * mechansim and is not some dummy contract trying to onboard through\n * the upgrade mechanism.\n */\n // cfd to cfd factory\n mapping(address => address) public allCFDs;\n\n function addCFD(address _cfdAddr) public {\n address cfdFactoryCurrent = getCFDFactoryLatest();\n // only the latest deployed factory is allowed to add new CFDs\n require(msg.sender == cfdFactoryCurrent, REASON_MUST_BE_LATEST_FACTORY);\n allCFDs[_cfdAddr] = cfdFactoryCurrent;\n }\n\n\n}\n",
"sourcePath": "/home/julien/0xFutures/protocol/contracts/Registry.sol",
"compiler": {
"name": "solc",
"version": "0.4.24+commit.e67f0147.Emscripten.clang"
},
"networks": {},
"schemaVersion": "2.0.1",
"updatedAt": "2018-11-27T22:04:40.330Z"
}