{
  "compiler": {
    "version": "0.8.27+commit.40a35a09"
  },
  "language": "Solidity",
  "output": {
    "abi": [
      {
        "inputs": [
          {
            "internalType": "bytes4",
            "name": "_functionSelector",
            "type": "bytes4"
          }
        ],
        "stateMutability": "view",
        "type": "function",
        "name": "facetAddress",
        "outputs": [
          {
            "internalType": "address",
            "name": "facetAddress_",
            "type": "address"
          }
        ]
      },
      {
        "inputs": [],
        "stateMutability": "view",
        "type": "function",
        "name": "facetAddresses",
        "outputs": [
          {
            "internalType": "address[]",
            "name": "facetAddresses_",
            "type": "address[]"
          }
        ]
      },
      {
        "inputs": [
          {
            "internalType": "address",
            "name": "_facet",
            "type": "address"
          }
        ],
        "stateMutability": "view",
        "type": "function",
        "name": "facetFunctionSelectors",
        "outputs": [
          {
            "internalType": "bytes4[]",
            "name": "_facetFunctionSelectors",
            "type": "bytes4[]"
          }
        ]
      },
      {
        "inputs": [],
        "stateMutability": "view",
        "type": "function",
        "name": "facets",
        "outputs": [
          {
            "internalType": "struct IDiamondLoupe.Facet[]",
            "name": "facets_",
            "type": "tuple[]",
            "components": [
              {
                "internalType": "address",
                "name": "facetAddress",
                "type": "address"
              },
              {
                "internalType": "bytes4[]",
                "name": "functionSelectors",
                "type": "bytes4[]"
              }
            ]
          }
        ]
      },
      {
        "inputs": [],
        "stateMutability": "pure",
        "type": "function",
        "name": "getSelectors",
        "outputs": [
          {
            "internalType": "bytes4[]",
            "name": "",
            "type": "bytes4[]"
          }
        ]
      },
      {
        "inputs": [
          {
            "internalType": "bytes4",
            "name": "_interfaceId",
            "type": "bytes4"
          }
        ],
        "stateMutability": "view",
        "type": "function",
        "name": "supportsInterface",
        "outputs": [
          {
            "internalType": "bool",
            "name": "",
            "type": "bool"
          }
        ]
      }
    ],
    "devdoc": {
      "kind": "dev",
      "methods": {
        "facetAddress(bytes4)": {
          "details": "If facet is not found return address(0).",
          "params": {
            "_functionSelector": "The function selector."
          },
          "returns": {
            "facetAddress_": "The facet address."
          }
        },
        "facetAddresses()": {
          "returns": {
            "facetAddresses_": "facetAddresses_"
          }
        },
        "facetFunctionSelectors(address)": {
          "params": {
            "_facet": "The facet address."
          },
          "returns": {
            "_facetFunctionSelectors": "The selectors associated with a facet address."
          }
        },
        "facets()": {
          "returns": {
            "facets_": "Facet"
          }
        }
      },
      "version": 1
    },
    "userdoc": {
      "kind": "user",
      "methods": {
        "facetAddress(bytes4)": {
          "notice": "Gets the facet address that supports the given selector."
        },
        "facetAddresses()": {
          "notice": "Get all the facet addresses used by a diamond."
        },
        "facetFunctionSelectors(address)": {
          "notice": "Gets all the function selectors supported by a specific facet."
        },
        "facets()": {
          "notice": "Gets all facets and their selectors."
        }
      },
      "version": 1
    }
  },
  "settings": {
    "remappings": [
      "@openzeppelin/=node_modules/@openzeppelin/",
      "@prb/math/=node_modules/@prb/math/",
      "eth-gas-reporter/=node_modules/eth-gas-reporter/",
      "forge-std/=lib/forge-std/src/",
      "hardhat/=node_modules/hardhat/"
    ],
    "optimizer": {
      "enabled": true,
      "runs": 10000
    },
    "metadata": {
      "bytecodeHash": "ipfs"
    },
    "compilationTarget": {
      "contracts/facets/DiamondLoupeFacet.sol": "DiamondLoupeFacet"
    },
    "evmVersion": "cancun",
    "libraries": {},
    "viaIR": true
  },
  "sources": {
    "contracts/facets/DiamondLoupeFacet.sol": {
      "keccak256": "0xc604b1adefa97439cc575aefcd8880e9a1cefb74f63afc79ed84e8d903ea197b",
      "urls": [
        "bzz-raw://35d8f2fe1d2cfcf42895b67adb2175bb57e6d6540de41401b78f79d0c37a1fd8",
        "dweb:/ipfs/QmQ2e3HLSfaygsrc2cEdxLd1GN3sks3vU4DL76qGs2TKtF"
      ],
      "license": "FSL-1.1-MIT"
    },
    "contracts/interfaces/IDiamond.sol": {
      "keccak256": "0xf6ea8172fc4ca7f19387dcab713a7c2d3c7453540ec8ea9bbf8fa29fce272d4b",
      "urls": [
        "bzz-raw://57c74c3e17114c0aa5982815aab8cff5264c00317af1abe3620ee8acaca49ff9",
        "dweb:/ipfs/Qma45nAPXZU1MCDfuEBe1Fub6Qd7oumdyEqonGeqsPHXMQ"
      ],
      "license": "FSL-1.1-MIT"
    },
    "contracts/interfaces/IDiamondCut.sol": {
      "keccak256": "0xe30dd72352453957dbc5d9f6b96369b1630c7abac4c2eb6fd49fc858317f99e3",
      "urls": [
        "bzz-raw://55940b6e5e3ae666f6851b2deac40b10173a2636fcef15dbe7e44b94542e9cfa",
        "dweb:/ipfs/QmeVaPtmffSzEz3x4NgAJVjdjMTosM85JyCcX3eGF1Qpo1"
      ],
      "license": "FSL-1.1-MIT"
    },
    "contracts/interfaces/IDiamondLoupe.sol": {
      "keccak256": "0xe0bf21cd76b595fce14ab95436ed0ad56a3e98715ca1e96bf01cf5658d9a5a82",
      "urls": [
        "bzz-raw://7cc8b98fb3da2c460dce03e7b1b1788d5e6420deaa5b01b03131605fe2823ab1",
        "dweb:/ipfs/QmWLGrK1FDCDQxkh43BQW94U1ruNhnVygAqXxfhsAGPsf3"
      ],
      "license": "FSL-1.1-MIT"
    },
    "contracts/libraries/LibDiamond.sol": {
      "keccak256": "0xe411f7691d0554f8f01260065f249abda18eaa17697b626272c4e0554a2244b1",
      "urls": [
        "bzz-raw://a116a9dcfd5dc8cef470e6c53c69bbaada930ebe9a7373a0a4a6c3924b77d7e8",
        "dweb:/ipfs/QmRxGt99hosAR5wxJpuTeXpyEV6DNb5fnxs76P2L2Bd34Y"
      ],
      "license": "FSL-1.1-MIT"
    },
    "node_modules/@openzeppelin/contracts/interfaces/IERC165.sol": {
      "keccak256": "0xde7e9fd9aee8d4f40772f96bb3b58836cbc6dfc0227014a061947f8821ea9724",
      "urls": [
        "bzz-raw://11fea9f8bc98949ac6709f0c1699db7430d2948137aa94d5a9e95a91f61a710a",
        "dweb:/ipfs/QmQdfRXxQjwP6yn3DVo1GHPpriKNcFghSPi94Z1oKEFUNS"
      ],
      "license": "MIT"
    },
    "node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol": {
      "keccak256": "0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8",
      "urls": [
        "bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621",
        "dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"
      ],
      "license": "MIT"
    }
  },
  "version": 1
}