{"abi":[{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceID","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"Interface for the ERC-165 standard as described in the EIP-165. Allows for contracts to be checked for their support of an interface. See: https://eips.ethereum.org/EIPS/eip-165\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.\",\"params\":{\"interfaceID\":\"The interface identifier, as specified in ERC-165.\"},\"returns\":{\"_0\":\"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise.\"}}},\"title\":\"IERC165\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"supportsInterface(bytes4)\":{\"notice\":\"Query if a contract implements an interface.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/IERC165.sol\":\"IERC165\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/\",\":@latticexyz/=node_modules/@latticexyz/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":base/=src/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":solmate/=node_modules/solmate/src/\"]},\"sources\":{\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"supportsInterface(bytes4)":{"details":"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.","params":{"interfaceID":"The interface identifier, as specified in ERC-165."},"returns":{"_0":"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"supportsInterface(bytes4)":{"notice":"Query if a contract implements an interface."}},"version":1}},"settings":{"remappings":["@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/","@latticexyz/=node_modules/@latticexyz/","@openzeppelin/=node_modules/@openzeppelin/","base/=src/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","solmate/=node_modules/solmate/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"node_modules/@latticexyz/world/src/IERC165.sol":"IERC165"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"}},"version":1},"ast":{"absolutePath":"node_modules/@latticexyz/world/src/IERC165.sol","id":47585,"exportedSymbols":{"IERC165":[47584]},"nodeType":"SourceUnit","src":"32:781:105","nodes":[{"id":47574,"nodeType":"PragmaDirective","src":"32:25:105","nodes":[],"literals":["solidity",">=","0.8",".24"]},{"id":47584,"nodeType":"ContractDefinition","src":"343:469:105","nodes":[{"id":47583,"nodeType":"FunctionDefinition","src":"734:76:105","nodes":[],"documentation":{"id":47576,"nodeType":"StructuredDocumentation","src":"365:366:105","text":" @notice Query if a contract implements an interface.\n @dev Interface identification is specified in ERC-165.\n This function uses less than 30,000 gas.\n @param interfaceID The interface identifier, as specified in ERC-165.\n @return True if the contract implements `interfaceID` and\n `interfaceID` is not 0xffffffff, false otherwise."},"functionSelector":"01ffc9a7","implemented":false,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"743:17:105","parameters":{"id":47579,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47578,"mutability":"mutable","name":"interfaceID","nameLocation":"768:11:105","nodeType":"VariableDeclaration","scope":47583,"src":"761:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":47577,"name":"bytes4","nodeType":"ElementaryTypeName","src":"761:6:105","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"760:20:105"},"returnParameters":{"id":47582,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47581,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":47583,"src":"804:4:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":47580,"name":"bool","nodeType":"ElementaryTypeName","src":"804:4:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"803:6:105"},"scope":47584,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IERC165","contractDependencies":[],"contractKind":"interface","documentation":{"id":47575,"nodeType":"StructuredDocumentation","src":"59:283:105","text":" @title IERC165\n @author MUD (https://mud.dev) by Lattice (https://lattice.xyz)\n @dev Interface for the ERC-165 standard as described in the EIP-165.\n Allows for contracts to be checked for their support of an interface.\n See: https://eips.ethereum.org/EIPS/eip-165"},"fullyImplemented":false,"linearizedBaseContracts":[47584],"name":"IERC165","nameLocation":"353:7:105","scope":47585,"usedErrors":[],"usedEvents":[]}],"license":"MIT"},"id":105}