{
	"compiler": {
		"version": "0.8.0+commit.c7dfd78e"
	},
	"language": "Solidity",
	"output": {
		"abi": [
			{
				"inputs": [],
				"name": "doubleProxy",
				"outputs": [
					{
						"internalType": "address",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "erc20Wrapper",
				"outputs": [
					{
						"internalType": "address",
						"name": "",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [],
				"name": "erc20Wrappers",
				"outputs": [
					{
						"internalType": "address[]",
						"name": "",
						"type": "address[]"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "operator",
						"type": "address"
					}
				],
				"name": "isAuthorizedOrchestrator",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "ethItem",
						"type": "address"
					}
				],
				"name": "isEthItem",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "newDoubleProxy",
						"type": "address"
					}
				],
				"name": "setDoubleProxy",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "newWrapper",
						"type": "address"
					}
				],
				"name": "setERC20Wrapper",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "ethItem",
						"type": "address"
					}
				],
				"name": "setEthItem",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "wrappedAddress",
						"type": "address"
					},
					{
						"internalType": "address",
						"name": "ethItem",
						"type": "address"
					}
				],
				"name": "setWrapped",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "bytes4",
						"name": "interfaceId",
						"type": "bytes4"
					}
				],
				"name": "supportsInterface",
				"outputs": [
					{
						"internalType": "bool",
						"name": "",
						"type": "bool"
					}
				],
				"stateMutability": "view",
				"type": "function"
			},
			{
				"inputs": [
					{
						"internalType": "address",
						"name": "wrappedAddress",
						"type": "address"
					},
					{
						"internalType": "uint256",
						"name": "version",
						"type": "uint256"
					}
				],
				"name": "wrapper",
				"outputs": [
					{
						"internalType": "address",
						"name": "ethItem",
						"type": "address"
					}
				],
				"stateMutability": "view",
				"type": "function"
			}
		],
		"devdoc": {
			"details": "This contract represents the Factory Used to deploy all the EthItems, keeping track of them.",
			"kind": "dev",
			"methods": {
				"doubleProxy()": {
					"details": "GET - The DoubleProxy of the DFO linked to this Contract"
				},
				"setDoubleProxy(address)": {
					"details": "SET - The DoubleProxy of the DFO linked to this Contract It can be done only by the Factory controller",
					"params": {
						"newDoubleProxy": "the new DoubleProxy address"
					}
				},
				"supportsInterface(bytes4)": {
					"details": "Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas."
				}
			},
			"title": "IKnowledgeBase",
			"version": 1
		},
		"userdoc": {
			"kind": "user",
			"methods": {},
			"version": 1
		}
	},
	"settings": {
		"compilationTarget": {
			"localhost/proxy/contracts/interfaces/IKnowledgeBase.sol": "IKnowledgeBase"
		},
		"evmVersion": "istanbul",
		"libraries": {},
		"metadata": {
			"bytecodeHash": "ipfs"
		},
		"optimizer": {
			"enabled": true,
			"runs": 9999
		},
		"remappings": []
	},
	"sources": {
		"localhost/proxy/contracts/interfaces/IERC165.sol": {
			"keccak256": "0x1e37c0672c8b126c1962605427b70bdb93e6deb37bb086bfa91355072449f810",
			"license": "MIT",
			"urls": [
				"bzz-raw://de7b376c2da4c1ad9fe9e37c31871228778e27a43d7bf9de4a8d8a9a9712f46a",
				"dweb:/ipfs/QmPd41MzMckfbxvf2g9W1GPLzFeZt39LCmS4GXGD7AEUbr"
			]
		},
		"localhost/proxy/contracts/interfaces/IEthItemOrchestratorDependantElement.sol": {
			"keccak256": "0x87d71a0eaa12d94a86f58873f0056c34cfca791de4526cffa914b91b853a89d5",
			"license": "MIT",
			"urls": [
				"bzz-raw://b9b0e575d297e39bb37d542c06c6bc29c480f3f36a7bf5738f26a2dd206573a1",
				"dweb:/ipfs/QmU9Y6uMvx2KAgoFPqVhSxemnqVmh3yeTJQ7E6xW6Az96o"
			]
		},
		"localhost/proxy/contracts/interfaces/IKnowledgeBase.sol": {
			"keccak256": "0x0e81332f779e91cbd56be48174fc5f8f2744b2c2cb4a42f9af469e90eb0151b2",
			"license": "MIT",
			"urls": [
				"bzz-raw://91db1d58e2f587238162fdf0b67b1f61fe583b22c48cfd8599868f22f3bd5b05",
				"dweb:/ipfs/QmeS9xdaT2Hsyk17fdo187Df93uS3BvNUJP5LxpNHNVt56"
			]
		}
	},
	"version": 1
}