{"abi":[{"type":"function","name":"run","inputs":[{"name":"attestationPayload","type":"tuple","internalType":"struct AttestationPayload","components":[{"name":"schemaId","type":"bytes32","internalType":"bytes32"},{"name":"expirationDate","type":"uint64","internalType":"uint64"},{"name":"subject","type":"bytes","internalType":"bytes"},{"name":"attestationData","type":"bytes","internalType":"bytes"}]},{"name":"validationPayload","type":"bytes","internalType":"bytes"},{"name":"initialCaller","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"attester","type":"address","internalType":"address"},{"name":"portal","type":"address","internalType":"address"},{"name":"operationType","type":"uint8","internalType":"enum OperationType"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceID","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"error","name":"OnlyPortalOwner","inputs":[]}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"run((bytes32,uint64,bytes,bytes),bytes,address,uint256,address,address,uint8)":"0678be5a","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"OnlyPortalOwner\",\"type\":\"error\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"schemaId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"expirationDate\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"subject\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"attestationData\",\"type\":\"bytes\"}],\"internalType\":\"struct AttestationPayload\",\"name\":\"attestationPayload\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"validationPayload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"initialCaller\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"portal\",\"type\":\"address\"},{\"internalType\":\"enum OperationType\",\"name\":\"operationType\",\"type\":\"uint8\"}],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Consensys\",\"kind\":\"dev\",\"methods\":{\"run((bytes32,uint64,bytes,bytes),bytes,address,uint256,address,address,uint8)\":{\"params\":{\"attestationPayload\":\"The incoming attestation data\",\"attester\":\"The address defined by the Portal as the attester for this payload\",\"initialCaller\":\"The address of the initial caller (transaction sender)\",\"portal\":\"The issuing Portal's address\",\"validationPayload\":\"Additional data required for verification\",\"value\":\"The value (ETH) optionally passed in the attesting transaction\"}},\"supportsInterface(bytes4)\":{\"params\":{\"interfaceID\":\"The ID of the interface to check.\"},\"returns\":{\"_0\":\"A boolean indicating interface support.\"}}},\"title\":\"Abstract Module V2\",\"version\":1},\"userdoc\":{\"errors\":{\"OnlyPortalOwner()\":[{\"notice\":\"Error thrown when someone else than the portal's owner is trying to revoke\"}]},\"kind\":\"user\",\"methods\":{\"run((bytes32,uint64,bytes,bytes),bytes,address,uint256,address,address,uint8)\":{\"notice\":\"Executes the module's custom logic\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if the contract implements the Module interface.\"}},\"notice\":\"Defines the minimal Module V2 interface\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/abstracts/AbstractModuleV2.sol\":\"AbstractModuleV2\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":hardhat/=node_modules/hardhat/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin/=lib/openzeppelin-contracts-upgradeable/contracts/\"]},\"sources\":{\"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"src/abstracts/AbstractModuleV2.sol\":{\"keccak256\":\"0x87a3060cac439296ef19c719a6abe3776c59ab858c9d935a07e0c70c57387ac3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2208b4e53226d1a08ca45ccda9686abc7d339aee8b3554823585fb3acc0c1479\",\"dweb:/ipfs/QmdFMkJ49tBRUCT5oVMFGhub9ZFWL6wzv3jiW35XsLbuYi\"]},\"src/types/Enums.sol\":{\"keccak256\":\"0x6c68eecf740a3f51211c954a99b43ebc2186e7b3e79b6c984937ad5c983e45a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c185006a0fde12fd59733b01578bbeefc2c0349c5f7899cc0652d3e3dd1a142\",\"dweb:/ipfs/QmUsw5sEwBDM4skEaHHdRovDXB12F47pQtUjE4Dq2SBu3t\"]},\"src/types/Structs.sol\":{\"keccak256\":\"0x8e3d41554d3c35181c36e019deddebfa6cb52a3f7b53c73c197fa2a87184ed2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc65fc7d7491ad0a26c8dd5ca1a1bb54d935ad6b59d99463c781446d57013f2a\",\"dweb:/ipfs/QmTgtxg6oNmf6QnbEcNdQosFutUYs7tkZSeN9KVpKGtWWK\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.21+commit.d9974bed"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"OnlyPortalOwner"},{"inputs":[{"internalType":"struct AttestationPayload","name":"attestationPayload","type":"tuple","components":[{"internalType":"bytes32","name":"schemaId","type":"bytes32"},{"internalType":"uint64","name":"expirationDate","type":"uint64"},{"internalType":"bytes","name":"subject","type":"bytes"},{"internalType":"bytes","name":"attestationData","type":"bytes"}]},{"internalType":"bytes","name":"validationPayload","type":"bytes"},{"internalType":"address","name":"initialCaller","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"address","name":"attester","type":"address"},{"internalType":"address","name":"portal","type":"address"},{"internalType":"enum OperationType","name":"operationType","type":"uint8"}],"stateMutability":"nonpayable","type":"function","name":"run"},{"inputs":[{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"run((bytes32,uint64,bytes,bytes),bytes,address,uint256,address,address,uint8)":{"params":{"attestationPayload":"The incoming attestation data","attester":"The address defined by the Portal as the attester for this payload","initialCaller":"The address of the initial caller (transaction sender)","portal":"The issuing Portal's address","validationPayload":"Additional data required for verification","value":"The value (ETH) optionally passed in the attesting transaction"}},"supportsInterface(bytes4)":{"params":{"interfaceID":"The ID of the interface to check."},"returns":{"_0":"A boolean indicating interface support."}}},"version":1},"userdoc":{"kind":"user","methods":{"run((bytes32,uint64,bytes,bytes),bytes,address,uint256,address,address,uint8)":{"notice":"Executes the module's custom logic"},"supportsInterface(bytes4)":{"notice":"Checks if the contract implements the Module interface."}},"version":1}},"settings":{"remappings":["@openzeppelin/=node_modules/@openzeppelin/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","hardhat/=node_modules/hardhat/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin/=lib/openzeppelin-contracts-upgradeable/contracts/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/abstracts/AbstractModuleV2.sol":"AbstractModuleV2"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"src/abstracts/AbstractModuleV2.sol":{"keccak256":"0x87a3060cac439296ef19c719a6abe3776c59ab858c9d935a07e0c70c57387ac3","urls":["bzz-raw://2208b4e53226d1a08ca45ccda9686abc7d339aee8b3554823585fb3acc0c1479","dweb:/ipfs/QmdFMkJ49tBRUCT5oVMFGhub9ZFWL6wzv3jiW35XsLbuYi"],"license":"MIT"},"src/types/Enums.sol":{"keccak256":"0x6c68eecf740a3f51211c954a99b43ebc2186e7b3e79b6c984937ad5c983e45a2","urls":["bzz-raw://6c185006a0fde12fd59733b01578bbeefc2c0349c5f7899cc0652d3e3dd1a142","dweb:/ipfs/QmUsw5sEwBDM4skEaHHdRovDXB12F47pQtUjE4Dq2SBu3t"],"license":"MIT"},"src/types/Structs.sol":{"keccak256":"0x8e3d41554d3c35181c36e019deddebfa6cb52a3f7b53c73c197fa2a87184ed2a","urls":["bzz-raw://bc65fc7d7491ad0a26c8dd5ca1a1bb54d935ad6b59d99463c781446d57013f2a","dweb:/ipfs/QmTgtxg6oNmf6QnbEcNdQosFutUYs7tkZSeN9KVpKGtWWK"],"license":"MIT"}},"version":1},"id":62}