{
	"compiler": {
		"version": "0.8.4+commit.c7e474f2"
	},
	"language": "Solidity",
	"output": {
		"abi": [
			{
				"anonymous": false,
				"inputs": [
					{
						"components": [
							{
								"internalType": "address",
								"name": "facetAddress",
								"type": "address"
							},
							{
								"internalType": "enum IDiamondCut.FacetCutAction",
								"name": "action",
								"type": "uint8"
							},
							{
								"internalType": "bytes4[]",
								"name": "functionSelectors",
								"type": "bytes4[]"
							}
						],
						"indexed": false,
						"internalType": "struct IDiamondCut.FacetCut[]",
						"name": "_diamondCut",
						"type": "tuple[]"
					},
					{
						"indexed": false,
						"internalType": "address",
						"name": "_init",
						"type": "address"
					},
					{
						"indexed": false,
						"internalType": "bytes",
						"name": "_calldata",
						"type": "bytes"
					}
				],
				"name": "DiamondCut",
				"type": "event"
			},
			{
				"inputs": [
					{
						"components": [
							{
								"internalType": "address",
								"name": "facetAddress",
								"type": "address"
							},
							{
								"internalType": "enum IDiamondCut.FacetCutAction",
								"name": "action",
								"type": "uint8"
							},
							{
								"internalType": "bytes4[]",
								"name": "functionSelectors",
								"type": "bytes4[]"
							}
						],
						"internalType": "struct IDiamondCut.FacetCut[]",
						"name": "_diamondCut",
						"type": "tuple[]"
					},
					{
						"internalType": "address",
						"name": "_init",
						"type": "address"
					},
					{
						"internalType": "bytes",
						"name": "_calldata",
						"type": "bytes"
					}
				],
				"name": "diamondCut",
				"outputs": [],
				"stateMutability": "nonpayable",
				"type": "function"
			}
		],
		"devdoc": {
			"kind": "dev",
			"methods": {
				"diamondCut((address,uint8,bytes4[])[],address,bytes)": {
					"params": {
						"_calldata": "A function call, including function selector and arguments                  _calldata is executed with delegatecall on _init",
						"_diamondCut": "Contains the facet addresses and function selectors",
						"_init": "The address of the contract or facet to execute _calldata"
					}
				}
			},
			"version": 1
		},
		"userdoc": {
			"kind": "user",
			"methods": {
				"diamondCut((address,uint8,bytes4[])[],address,bytes)": {
					"notice": "Add/replace/remove any number of functions and optionally execute         a function with delegatecall"
				}
			},
			"version": 1
		}
	},
	"settings": {
		"compilationTarget": {
			"StargateFacet_flat.sol": "IDiamondCut"
		},
		"evmVersion": "istanbul",
		"libraries": {},
		"metadata": {
			"bytecodeHash": "ipfs"
		},
		"optimizer": {
			"enabled": false,
			"runs": 200
		},
		"remappings": []
	},
	"sources": {
		"StargateFacet_flat.sol": {
			"keccak256": "0xe6074dd92720c8e9ee8399f4f13732bb39b8666d6dde23a53d9f8a32c18f2af6",
			"urls": [
				"bzz-raw://72a66b5e882fee4723fef9a1c8e5df550677b3e26fc458ae887b942028651037",
				"dweb:/ipfs/QmX8wLfPkUcBp1p8GyzDnM7SdGXr8dD4eoFEiBGbL7TD7V"
			]
		}
	},
	"version": 1
}