ERC7821ExecutorLib Constants
ERC165_MAP_IERC7821_SLOT
ERC-165 map slot for IERC7821 (type(IERC7821).interfaceId == 0x39922547, the XOR of
execute(bytes32,bytes) ^ supportsExecutionMode(bytes32); ERC-7821 defines no canonical id).
keccak256(abi.encode(bytes4(0x39922547), 0x9ca7f3e2e2bfb15fdf072b85dde92837cddacee6cf2f6b38cd06c9457c1c4200)).
bytes32 constant ERC165_MAP_IERC7821_SLOT = 0x78c1401e50bfb6276de93dc8c11adfbefc06555e8af1f7964bc4c850cbbd171c;_MODE_HEAD_MASK
ERC-7821 mode ids. First byte 0x01 = batch; bytes [6:10) 0x78210001 mark the opData variant.
Only the first 10 bytes are significant (_MODE_HEAD_MASK); the trailing modePayload is ignored.
bytes32 constant _MODE_HEAD_MASK = 0xffffffffffffffffffff00000000000000000000000000000000000000000000;_BATCH_HEAD
bytes32 constant _BATCH_HEAD = 0x0100000000000000000000000000000000000000000000000000000000000000;_BATCH_OPDATA_HEAD
bytes32 constant _BATCH_OPDATA_HEAD = 0x0100000000007821000100000000000000000000000000000000000000000000;EXECUTE_TYPEHASH
EIP-712 type hash for a relayer-submitted (signed-opData) batch authorization.
keccak256("Execute(bytes32 mode,bytes32 callsHash,uint256 nonce)").
bytes32 constant EXECUTE_TYPEHASH = 0xb63526befbf5b966e64c36954eb12c5d09096e0b0a8a06e90bd0c857b842ebcb;