diff --git a/cache/solidity-files-cache.json b/cache/solidity-files-cache.json index 1224b80..e08cfad 100644 --- a/cache/solidity-files-cache.json +++ b/cache/solidity-files-cache.json @@ -1 +1 @@ -{"_format":"","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/forge-std/src/Base.sol":{"lastModificationDate":1727956088662,"contentHash":"ee13c050b1914464f1d3f90cde90204b","sourceName":"lib/forge-std/src/Base.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.27":{"path":"Base.sol\\CommonBase.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"ScriptBase":{"0.8.27":{"path":"Base.sol\\ScriptBase.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"TestBase":{"0.8.27":{"path":"Base.sol\\TestBase.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1727956088663,"contentHash":"25b77f9806b64d497b8a46aeb8e5f6f0","sourceName":"lib/forge-std/src/StdAssertions.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.27":{"path":"StdAssertions.sol\\StdAssertions.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1727956088663,"contentHash":"b039727c96bb3d5b9a59448fd16b1e0f","sourceName":"lib/forge-std/src/StdChains.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.27":{"path":"StdChains.sol\\StdChains.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1727956088663,"contentHash":"96c712134b63f85d00461749d0c1611c","sourceName":"lib/forge-std/src/StdCheats.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.27":{"path":"StdCheats.sol\\StdCheats.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"StdCheatsSafe":{"0.8.27":{"path":"StdCheats.sol\\StdCheatsSafe.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1727956088664,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.27":{"path":"StdError.sol\\stdError.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1727956088664,"contentHash":"f16837d0e7cb829544ae1f1319ea7643","sourceName":"lib/forge-std/src/StdInvariant.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.27":{"path":"StdInvariant.sol\\StdInvariant.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1727956088664,"contentHash":"02209da5708eaee03e24a9c24a687370","sourceName":"lib/forge-std/src/StdJson.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.27":{"path":"StdJson.sol\\stdJson.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1727956088664,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.27":{"path":"StdMath.sol\\stdMath.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1727956088665,"contentHash":"ce68f6e336944f16d31351a47d0b19b8","sourceName":"lib/forge-std/src/StdStorage.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.27":{"path":"StdStorage.sol\\stdStorage.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"stdStorageSafe":{"0.8.27":{"path":"StdStorage.sol\\stdStorageSafe.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1727956088665,"contentHash":"6281165a12aa639705c691fccefd855e","sourceName":"lib/forge-std/src/StdStyle.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.27":{"path":"StdStyle.sol\\StdStyle.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdToml.sol":{"lastModificationDate":1727956088665,"contentHash":"4bce85a4c60f2c073e651ee8140bcb4d","sourceName":"lib/forge-std/src/StdToml.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdToml":{"0.8.27":{"path":"StdToml.sol\\stdToml.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1727956088666,"contentHash":"b50717f17f251a2a96a5884c90add7bf","sourceName":"lib/forge-std/src/StdUtils.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC20.sol","lib/forge-std/src/interfaces/IERC721.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/forge-std/src/mocks/MockERC20.sol","lib/forge-std/src/mocks/MockERC721.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.27":{"path":"StdUtils.sol\\StdUtils.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/Test.sol":{"lastModificationDate":1727956088666,"contentHash":"b6f15605355fc8c421fe42a90f94bf32","sourceName":"lib/forge-std/src/Test.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdToml.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC20.sol","lib/forge-std/src/interfaces/IERC721.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/forge-std/src/mocks/MockERC20.sol","lib/forge-std/src/mocks/MockERC721.sol","lib/forge-std/src/safeconsole.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.27":{"path":"Test.sol\\Test.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1727956088667,"contentHash":"5928f469b3646114f329b4129fcf2401","sourceName":"lib/forge-std/src/Vm.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.27":{"path":"Vm.sol\\Vm.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"VmSafe":{"0.8.27":{"path":"Vm.sol\\VmSafe.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/console.sol":{"lastModificationDate":1727956088667,"contentHash":"ce19a9e49945b42118379ff99d853c05","sourceName":"lib/forge-std/src/console.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.27":{"path":"console.sol\\console.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/console2.sol":{"lastModificationDate":1727956088668,"contentHash":"f65ad21034b111e70fb5342d5771efcd","sourceName":"lib/forge-std/src/console2.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/console.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{},"seenByCompiler":true},"lib/forge-std/src/interfaces/IERC165.sol":{"lastModificationDate":1727956088668,"contentHash":"90fe5e2e3ed432d6f3b408e7c9e8a739","sourceName":"lib/forge-std/src/interfaces/IERC165.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2","artifacts":{"IERC165":{"0.8.27":{"path":"interfaces\\IERC165.sol\\IERC165.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/interfaces/IERC20.sol":{"lastModificationDate":1727956088668,"contentHash":"8099161d518e5862a76750349d58e801","sourceName":"lib/forge-std/src/interfaces/IERC20.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2","artifacts":{"IERC20":{"0.8.27":{"path":"IERC20.sol\\IERC20.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/interfaces/IERC721.sol":{"lastModificationDate":1727956088669,"contentHash":"efc26e7f9a2f76b68088c8760ceae2dc","sourceName":"lib/forge-std/src/interfaces/IERC721.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/interfaces/IERC165.sol"],"versionRequirement":">=0.6.2","artifacts":{"IERC721":{"0.8.27":{"path":"IERC721.sol\\IERC721.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"IERC721Enumerable":{"0.8.27":{"path":"IERC721.sol\\IERC721Enumerable.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"IERC721Metadata":{"0.8.27":{"path":"IERC721.sol\\IERC721Metadata.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"IERC721TokenReceiver":{"0.8.27":{"path":"IERC721.sol\\IERC721TokenReceiver.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1727956088670,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.27":{"path":"IMulticall3.sol\\IMulticall3.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/mocks/MockERC20.sol":{"lastModificationDate":1727956088670,"contentHash":"8e14d63e81e1d54dbc2d44df38ae9dec","sourceName":"lib/forge-std/src/mocks/MockERC20.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/interfaces/IERC20.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"MockERC20":{"0.8.27":{"path":"MockERC20.sol\\MockERC20.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/mocks/MockERC721.sol":{"lastModificationDate":1727956088670,"contentHash":"e91cd9dba7f88f03710c56a347d89d1e","sourceName":"lib/forge-std/src/mocks/MockERC721.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC721.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"MockERC721":{"0.8.27":{"path":"MockERC721.sol\\MockERC721.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/safeconsole.sol":{"lastModificationDate":1727956088671,"contentHash":"1445aa2f47000e212173e0cefd6c7a77","sourceName":"lib/forge-std/src/safeconsole.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"safeconsole":{"0.8.27":{"path":"safeconsole.sol\\safeconsole.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/BaseAccount.sol":{"lastModificationDate":1727956670143,"contentHash":"72f8c2b16f0bd40a373c86ecc12facb3","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/BaseAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":"^0.8.23","artifacts":{"BaseAccount":{"0.8.27":{"path":"BaseAccount.sol\\BaseAccount.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/EntryPoint.sol":{"lastModificationDate":1727956670144,"contentHash":"c4f2ff4a5a94a5813047f515beb7dc88","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/EntryPoint.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol","lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol","lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/ReentrancyGuard.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/ERC165.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.23","artifacts":{"EntryPoint":{"0.8.27":{"path":"EntryPoint.sol\\EntryPoint.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/Helpers.sol":{"lastModificationDate":1727956670144,"contentHash":"d9a3c7fc04ae5f3fc8011d8792e8cb18","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/Helpers.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol":{"lastModificationDate":1727956670144,"contentHash":"a127aeed000517349e4d579991cc1b5d","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol"],"versionRequirement":"^0.8.23","artifacts":{"NonceManager":{"0.8.27":{"path":"NonceManager.sol\\NonceManager.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol":{"lastModificationDate":1727956670145,"contentHash":"c4cda983dfb4422cd413360a23ed244a","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{"SenderCreator":{"0.8.27":{"path":"SenderCreator.sol\\SenderCreator.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol":{"lastModificationDate":1727956670145,"contentHash":"9857ed1921becf91ccf93ca0de9db0b5","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol"],"versionRequirement":"^0.8.23","artifacts":{"StakeManager":{"0.8.27":{"path":"StakeManager.sol\\StakeManager.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol":{"lastModificationDate":1727956670145,"contentHash":"49e8ce45c96e09cb83ff7d1d2e72e448","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":"^0.8.23","artifacts":{"UserOperationLib":{"0.8.27":{"path":"UserOperationLib.sol\\UserOperationLib.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol":{"lastModificationDate":1727956670146,"contentHash":"1f8a384da0da6354fdd834d63b24dfd4","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IAccount":{"0.8.27":{"path":"IAccount.sol\\IAccount.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol":{"lastModificationDate":1727956670146,"contentHash":"29ded9a414cc72b0b85e3edaa357c9d8","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IAccountExecute":{"0.8.27":{"path":"IAccountExecute.sol\\IAccountExecute.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol":{"lastModificationDate":1727956670146,"contentHash":"ea70aa8db36795540523cebf73f66469","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IAggregator":{"0.8.27":{"path":"IAggregator.sol\\IAggregator.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IEntryPoint.sol":{"lastModificationDate":1727956670147,"contentHash":"d201c25e2806de5038e53c646f93810c","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IEntryPoint.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IEntryPoint":{"0.8.27":{"path":"IEntryPoint.sol\\IEntryPoint.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol":{"lastModificationDate":1727962747847,"contentHash":"2865a605d4aece6b0d511f573003d167","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.7.5","artifacts":{"INonceManager":{"0.8.27":{"path":"INonceManager.sol\\INonceManager.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol":{"lastModificationDate":1727956670148,"contentHash":"0edfe2232b7eb455a17ebaacd0d09243","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IPaymaster":{"0.8.27":{"path":"IPaymaster.sol\\IPaymaster.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol":{"lastModificationDate":1727956670148,"contentHash":"8a37b39cb2b2d53efcd76e8d6af616ff","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.7.5","artifacts":{"IStakeManager":{"0.8.27":{"path":"IStakeManager.sol\\IStakeManager.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/PackedUserOperation.sol":{"lastModificationDate":1727958836937,"contentHash":"6cdfe05be923cdc6051633ff1614e956","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/PackedUserOperation.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.7.5","artifacts":{},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/samples/callback/TokenCallbackHandler.sol":{"lastModificationDate":1727956670155,"contentHash":"7c2d395a28e99da6bca5756ead9bbf8e","sourceName":"lib/light-account/lib/account-abstraction/contracts/samples/callback/TokenCallbackHandler.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.23","artifacts":{"TokenCallbackHandler":{"0.8.27":{"path":"TokenCallbackHandler.sol\\TokenCallbackHandler.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol":{"lastModificationDate":1727956670162,"contentHash":"8156fbf5a7fe2e169f75483db6787860","sourceName":"lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{"Exec":{"0.8.27":{"path":"Exec.sol\\Exec.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol":{"lastModificationDate":1727956726452,"contentHash":"12a8c0358597a0dc191410b1259e61ee","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"IERC1271":{"0.8.27":{"path":"IERC1271.sol\\IERC1271.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1727956726506,"contentHash":"d14616defa6d417fafa47e416e3cec73","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.20","artifacts":{"IERC1155Receiver":{"0.8.27":{"path":"IERC1155Receiver.sol\\IERC1155Receiver.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1727956726517,"contentHash":"fc8a9841f4bdd6329c26a00d5e75f4b3","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"IERC721Receiver":{"0.8.27":{"path":"IERC721Receiver.sol\\IERC721Receiver.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol":{"lastModificationDate":1727956726528,"contentHash":"a92331adac11b453a4de0323fc948119","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"ReentrancyGuard":{"0.8.27":{"path":"ReentrancyGuard.sol\\ReentrancyGuard.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1727956726529,"contentHash":"ba57ff4ddf1d9cae9d2009792795b7f6","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol"],"versionRequirement":"^0.8.20","artifacts":{"Strings":{"0.8.27":{"path":"Strings.sol\\Strings.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1727956726530,"contentHash":"b96e0d7a3c2b185342c7d083d765b61f","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"ECDSA":{"0.8.27":{"path":"ECDSA.sol\\ECDSA.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol":{"lastModificationDate":1727956726531,"contentHash":"9e5eec59eaffa554d6cca561dcb914eb","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol"],"versionRequirement":"^0.8.20","artifacts":{"MessageHashUtils":{"0.8.27":{"path":"MessageHashUtils.sol\\MessageHashUtils.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol":{"lastModificationDate":1727956726531,"contentHash":"67e1b232791e1ea1cf6475bd4aaed191","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/ECDSA.sol"],"versionRequirement":"^0.8.20","artifacts":{"SignatureChecker":{"0.8.27":{"path":"SignatureChecker.sol\\SignatureChecker.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1727956726532,"contentHash":"6a55c353946e471d9792965d06208295","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.20","artifacts":{"ERC165":{"0.8.27":{"path":"ERC165.sol\\ERC165.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1727956726533,"contentHash":"de0163561b417b800d01749cbbe2147e","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"IERC165":{"0.8.27":{"path":"IERC165.sol\\IERC165.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1727956726534,"contentHash":"718fa8ba0ff269c92e364c1429d9de57","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"Math":{"0.8.27":{"path":"Math.sol\\Math.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"lastModificationDate":1727956726535,"contentHash":"b6c6bdc7aaca4fe5b680760a72e09d3e","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"SignedMath":{"0.8.27":{"path":"SignedMath.sol\\SignedMath.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/common/BaseLightAccount.sol":{"lastModificationDate":1727956616525,"contentHash":"10430e8b579896a36ad3e72786325afa","sourceName":"lib/light-account/src/common/BaseLightAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/BaseAccount.sol","lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts\\samples/callback/TokenCallbackHandler.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol","lib/light-account/src/common/ERC1271.sol","lib/light-account/src/external/solady/EIP712.sol","lib/light-account/src/external/solady/UUPSUpgradeable.sol"],"versionRequirement":"^0.8.23","artifacts":{"BaseLightAccount":{"0.8.27":{"path":"BaseLightAccount.sol\\BaseLightAccount.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/common/CustomSlotInitializable.sol":{"lastModificationDate":1727956616526,"contentHash":"8859a8695544b7172e42909247381af8","sourceName":"lib/light-account/src/common/CustomSlotInitializable.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{"CustomSlotInitializable":{"0.8.27":{"path":"CustomSlotInitializable.sol\\CustomSlotInitializable.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/common/ERC1271.sol":{"lastModificationDate":1727956616526,"contentHash":"828b969da0a7b81f890268426cb00aae","sourceName":"lib/light-account/src/common/ERC1271.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/src/external/solady/EIP712.sol"],"versionRequirement":"^0.8.23","artifacts":{"ERC1271":{"0.8.27":{"path":"ERC1271.sol\\ERC1271.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/external/solady/EIP712.sol":{"lastModificationDate":1727956616527,"contentHash":"ee0cad211cd123b2053980c48786b9c6","sourceName":"lib/light-account/src/external/solady/EIP712.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"EIP712":{"0.8.27":{"path":"EIP712.sol\\EIP712.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/external/solady/UUPSUpgradeable.sol":{"lastModificationDate":1727956616527,"contentHash":"6b4de3aa02b577c654ec91ca7520798b","sourceName":"lib/light-account/src/external/solady/UUPSUpgradeable.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"UUPSUpgradeable":{"0.8.27":{"path":"UUPSUpgradeable.sol\\UUPSUpgradeable.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"src/BLSLightAccount.sol":{"lastModificationDate":1728007056492,"contentHash":"5e50133c04e20d519e895e2e450f0ac8","sourceName":"src/BLSLightAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/BaseAccount.sol","lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts\\samples/callback/TokenCallbackHandler.sol","lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/ECDSA.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/MessageHashUtils.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/SignatureChecker.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol","lib/light-account\\src/common/BaseLightAccount.sol","lib/light-account\\src/common/CustomSlotInitializable.sol","lib/light-account/src/common/ERC1271.sol","lib/light-account/src/external/solady/EIP712.sol","lib/light-account/src/external/solady/UUPSUpgradeable.sol"],"versionRequirement":"^0.8.23","artifacts":{"BLSLightAccount":{"0.8.27":{"path":"BLSLightAccount.sol\\BLSLightAccount.json","build_id":"59d18d32e72c8fe4ce556e1f1073070c"}}},"seenByCompiler":true},"test/BLSLightAccount.sol":{"lastModificationDate":1728007770281,"contentHash":"8adc5d86ab411fa06bb074b8112a4b95","sourceName":"test/BLSLightAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdToml.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src\\Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC20.sol","lib/forge-std/src/interfaces/IERC721.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/forge-std/src/mocks/MockERC20.sol","lib/forge-std/src/mocks/MockERC721.sol","lib/forge-std/src/safeconsole.sol","lib/light-account/lib/account-abstraction/contracts\\core/BaseAccount.sol","lib/light-account\\lib/account-abstraction/contracts/core/EntryPoint.sol","lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol","lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol","lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts\\samples/callback/TokenCallbackHandler.sol","lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol","lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/ReentrancyGuard.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/ECDSA.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/MessageHashUtils.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/SignatureChecker.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/ERC165.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol","lib/light-account\\src/common/BaseLightAccount.sol","lib/light-account\\src/common/CustomSlotInitializable.sol","lib/light-account/src/common/ERC1271.sol","lib/light-account/src/external/solady/EIP712.sol","lib/light-account/src/external/solady/UUPSUpgradeable.sol","src\\BLSLightAccount.sol"],"versionRequirement":"^0.8.0","artifacts":{"BLSLightAccountTest":{"0.8.27":{"path":"BLSLightAccount.sol\\BLSLightAccountTest.json","build_id":"2c335ee4f4cb41678b70f4a47450c538"}}},"seenByCompiler":true}},"builds":["18e48785cf879a4c6695b26209e67d9d","2c335ee4f4cb41678b70f4a47450c538","5860657d27e709293a6b4f4ff36a6b10","59d18d32e72c8fe4ce556e1f1073070c"]} \ No newline at end of file +{"_format":"","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/forge-std/src/Base.sol":{"lastModificationDate":1727956088662,"contentHash":"ee13c050b1914464f1d3f90cde90204b","sourceName":"lib/forge-std/src/Base.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.27":{"path":"Base.sol\\CommonBase.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"ScriptBase":{"0.8.27":{"path":"Base.sol\\ScriptBase.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"TestBase":{"0.8.27":{"path":"Base.sol\\TestBase.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1727956088663,"contentHash":"25b77f9806b64d497b8a46aeb8e5f6f0","sourceName":"lib/forge-std/src/StdAssertions.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.27":{"path":"StdAssertions.sol\\StdAssertions.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1727956088663,"contentHash":"b039727c96bb3d5b9a59448fd16b1e0f","sourceName":"lib/forge-std/src/StdChains.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.27":{"path":"StdChains.sol\\StdChains.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1727956088663,"contentHash":"96c712134b63f85d00461749d0c1611c","sourceName":"lib/forge-std/src/StdCheats.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.27":{"path":"StdCheats.sol\\StdCheats.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"StdCheatsSafe":{"0.8.27":{"path":"StdCheats.sol\\StdCheatsSafe.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1727956088664,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.27":{"path":"StdError.sol\\stdError.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1727956088664,"contentHash":"f16837d0e7cb829544ae1f1319ea7643","sourceName":"lib/forge-std/src/StdInvariant.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.27":{"path":"StdInvariant.sol\\StdInvariant.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1727956088664,"contentHash":"02209da5708eaee03e24a9c24a687370","sourceName":"lib/forge-std/src/StdJson.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.27":{"path":"StdJson.sol\\stdJson.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1727956088664,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.27":{"path":"StdMath.sol\\stdMath.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1727956088665,"contentHash":"ce68f6e336944f16d31351a47d0b19b8","sourceName":"lib/forge-std/src/StdStorage.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.27":{"path":"StdStorage.sol\\stdStorage.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"stdStorageSafe":{"0.8.27":{"path":"StdStorage.sol\\stdStorageSafe.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1727956088665,"contentHash":"6281165a12aa639705c691fccefd855e","sourceName":"lib/forge-std/src/StdStyle.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.27":{"path":"StdStyle.sol\\StdStyle.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdToml.sol":{"lastModificationDate":1727956088665,"contentHash":"4bce85a4c60f2c073e651ee8140bcb4d","sourceName":"lib/forge-std/src/StdToml.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdToml":{"0.8.27":{"path":"StdToml.sol\\stdToml.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1727956088666,"contentHash":"b50717f17f251a2a96a5884c90add7bf","sourceName":"lib/forge-std/src/StdUtils.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC20.sol","lib/forge-std/src/interfaces/IERC721.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/forge-std/src/mocks/MockERC20.sol","lib/forge-std/src/mocks/MockERC721.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.27":{"path":"StdUtils.sol\\StdUtils.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/Test.sol":{"lastModificationDate":1727956088666,"contentHash":"b6f15605355fc8c421fe42a90f94bf32","sourceName":"lib/forge-std/src/Test.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdToml.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC20.sol","lib/forge-std/src/interfaces/IERC721.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/forge-std/src/mocks/MockERC20.sol","lib/forge-std/src/mocks/MockERC721.sol","lib/forge-std/src/safeconsole.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.27":{"path":"Test.sol\\Test.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1727956088667,"contentHash":"5928f469b3646114f329b4129fcf2401","sourceName":"lib/forge-std/src/Vm.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.27":{"path":"Vm.sol\\Vm.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"VmSafe":{"0.8.27":{"path":"Vm.sol\\VmSafe.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/console.sol":{"lastModificationDate":1727956088667,"contentHash":"ce19a9e49945b42118379ff99d853c05","sourceName":"lib/forge-std/src/console.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.27":{"path":"console.sol\\console.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/console2.sol":{"lastModificationDate":1727956088668,"contentHash":"f65ad21034b111e70fb5342d5771efcd","sourceName":"lib/forge-std/src/console2.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/console.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{},"seenByCompiler":true},"lib/forge-std/src/interfaces/IERC165.sol":{"lastModificationDate":1727956088668,"contentHash":"90fe5e2e3ed432d6f3b408e7c9e8a739","sourceName":"lib/forge-std/src/interfaces/IERC165.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2","artifacts":{"IERC165":{"0.8.27":{"path":"interfaces\\IERC165.sol\\IERC165.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/interfaces/IERC20.sol":{"lastModificationDate":1727956088668,"contentHash":"8099161d518e5862a76750349d58e801","sourceName":"lib/forge-std/src/interfaces/IERC20.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2","artifacts":{"IERC20":{"0.8.27":{"path":"IERC20.sol\\IERC20.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/interfaces/IERC721.sol":{"lastModificationDate":1727956088669,"contentHash":"efc26e7f9a2f76b68088c8760ceae2dc","sourceName":"lib/forge-std/src/interfaces/IERC721.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/interfaces/IERC165.sol"],"versionRequirement":">=0.6.2","artifacts":{"IERC721":{"0.8.27":{"path":"IERC721.sol\\IERC721.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"IERC721Enumerable":{"0.8.27":{"path":"IERC721.sol\\IERC721Enumerable.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"IERC721Metadata":{"0.8.27":{"path":"IERC721.sol\\IERC721Metadata.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}},"IERC721TokenReceiver":{"0.8.27":{"path":"IERC721.sol\\IERC721TokenReceiver.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1727956088670,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.27":{"path":"IMulticall3.sol\\IMulticall3.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/mocks/MockERC20.sol":{"lastModificationDate":1727956088670,"contentHash":"8e14d63e81e1d54dbc2d44df38ae9dec","sourceName":"lib/forge-std/src/mocks/MockERC20.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/interfaces/IERC20.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"MockERC20":{"0.8.27":{"path":"MockERC20.sol\\MockERC20.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/mocks/MockERC721.sol":{"lastModificationDate":1727956088670,"contentHash":"e91cd9dba7f88f03710c56a347d89d1e","sourceName":"lib/forge-std/src/mocks/MockERC721.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC721.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"MockERC721":{"0.8.27":{"path":"MockERC721.sol\\MockERC721.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/forge-std/src/safeconsole.sol":{"lastModificationDate":1727956088671,"contentHash":"1445aa2f47000e212173e0cefd6c7a77","sourceName":"lib/forge-std/src/safeconsole.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"safeconsole":{"0.8.27":{"path":"safeconsole.sol\\safeconsole.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/BaseAccount.sol":{"lastModificationDate":1727956670143,"contentHash":"72f8c2b16f0bd40a373c86ecc12facb3","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/BaseAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":"^0.8.23","artifacts":{"BaseAccount":{"0.8.27":{"path":"BaseAccount.sol\\BaseAccount.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/EntryPoint.sol":{"lastModificationDate":1727956670144,"contentHash":"c4f2ff4a5a94a5813047f515beb7dc88","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/EntryPoint.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol","lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol","lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/ReentrancyGuard.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/ERC165.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.23","artifacts":{"EntryPoint":{"0.8.27":{"path":"EntryPoint.sol\\EntryPoint.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/Helpers.sol":{"lastModificationDate":1727956670144,"contentHash":"d9a3c7fc04ae5f3fc8011d8792e8cb18","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/Helpers.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol":{"lastModificationDate":1727956670144,"contentHash":"a127aeed000517349e4d579991cc1b5d","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol"],"versionRequirement":"^0.8.23","artifacts":{"NonceManager":{"0.8.27":{"path":"NonceManager.sol\\NonceManager.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol":{"lastModificationDate":1727956670145,"contentHash":"c4cda983dfb4422cd413360a23ed244a","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{"SenderCreator":{"0.8.27":{"path":"SenderCreator.sol\\SenderCreator.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol":{"lastModificationDate":1727956670145,"contentHash":"9857ed1921becf91ccf93ca0de9db0b5","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol"],"versionRequirement":"^0.8.23","artifacts":{"StakeManager":{"0.8.27":{"path":"StakeManager.sol\\StakeManager.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol":{"lastModificationDate":1727956670145,"contentHash":"49e8ce45c96e09cb83ff7d1d2e72e448","sourceName":"lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":"^0.8.23","artifacts":{"UserOperationLib":{"0.8.27":{"path":"UserOperationLib.sol\\UserOperationLib.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol":{"lastModificationDate":1727956670146,"contentHash":"1f8a384da0da6354fdd834d63b24dfd4","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IAccount":{"0.8.27":{"path":"IAccount.sol\\IAccount.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol":{"lastModificationDate":1727956670146,"contentHash":"29ded9a414cc72b0b85e3edaa357c9d8","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IAccountExecute":{"0.8.27":{"path":"IAccountExecute.sol\\IAccountExecute.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol":{"lastModificationDate":1727956670146,"contentHash":"ea70aa8db36795540523cebf73f66469","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IAggregator":{"0.8.27":{"path":"IAggregator.sol\\IAggregator.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IEntryPoint.sol":{"lastModificationDate":1727956670147,"contentHash":"d201c25e2806de5038e53c646f93810c","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IEntryPoint.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IEntryPoint":{"0.8.27":{"path":"IEntryPoint.sol\\IEntryPoint.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol":{"lastModificationDate":1727962747847,"contentHash":"2865a605d4aece6b0d511f573003d167","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.7.5","artifacts":{"INonceManager":{"0.8.27":{"path":"INonceManager.sol\\INonceManager.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol":{"lastModificationDate":1727956670148,"contentHash":"0edfe2232b7eb455a17ebaacd0d09243","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol"],"versionRequirement":">=0.7.5","artifacts":{"IPaymaster":{"0.8.27":{"path":"IPaymaster.sol\\IPaymaster.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol":{"lastModificationDate":1727956670148,"contentHash":"8a37b39cb2b2d53efcd76e8d6af616ff","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.7.5","artifacts":{"IStakeManager":{"0.8.27":{"path":"IStakeManager.sol\\IStakeManager.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/interfaces/PackedUserOperation.sol":{"lastModificationDate":1727958836937,"contentHash":"6cdfe05be923cdc6051633ff1614e956","sourceName":"lib/light-account/lib/account-abstraction/contracts/interfaces/PackedUserOperation.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":">=0.7.5","artifacts":{},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/samples/callback/TokenCallbackHandler.sol":{"lastModificationDate":1727956670155,"contentHash":"7c2d395a28e99da6bca5756ead9bbf8e","sourceName":"lib/light-account/lib/account-abstraction/contracts/samples/callback/TokenCallbackHandler.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.23","artifacts":{"TokenCallbackHandler":{"0.8.27":{"path":"TokenCallbackHandler.sol\\TokenCallbackHandler.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol":{"lastModificationDate":1727956670162,"contentHash":"8156fbf5a7fe2e169f75483db6787860","sourceName":"lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{"Exec":{"0.8.27":{"path":"Exec.sol\\Exec.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol":{"lastModificationDate":1727956726452,"contentHash":"12a8c0358597a0dc191410b1259e61ee","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"IERC1271":{"0.8.27":{"path":"IERC1271.sol\\IERC1271.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1727956726506,"contentHash":"d14616defa6d417fafa47e416e3cec73","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.20","artifacts":{"IERC1155Receiver":{"0.8.27":{"path":"IERC1155Receiver.sol\\IERC1155Receiver.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1727956726517,"contentHash":"fc8a9841f4bdd6329c26a00d5e75f4b3","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"IERC721Receiver":{"0.8.27":{"path":"IERC721Receiver.sol\\IERC721Receiver.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol":{"lastModificationDate":1727956726528,"contentHash":"a92331adac11b453a4de0323fc948119","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"ReentrancyGuard":{"0.8.27":{"path":"ReentrancyGuard.sol\\ReentrancyGuard.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1727956726529,"contentHash":"ba57ff4ddf1d9cae9d2009792795b7f6","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol"],"versionRequirement":"^0.8.20","artifacts":{"Strings":{"0.8.27":{"path":"Strings.sol\\Strings.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1727956726530,"contentHash":"b96e0d7a3c2b185342c7d083d765b61f","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"ECDSA":{"0.8.27":{"path":"ECDSA.sol\\ECDSA.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol":{"lastModificationDate":1727956726531,"contentHash":"9e5eec59eaffa554d6cca561dcb914eb","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol"],"versionRequirement":"^0.8.20","artifacts":{"MessageHashUtils":{"0.8.27":{"path":"MessageHashUtils.sol\\MessageHashUtils.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol":{"lastModificationDate":1727956726531,"contentHash":"67e1b232791e1ea1cf6475bd4aaed191","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/ECDSA.sol"],"versionRequirement":"^0.8.20","artifacts":{"SignatureChecker":{"0.8.27":{"path":"SignatureChecker.sol\\SignatureChecker.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1727956726532,"contentHash":"6a55c353946e471d9792965d06208295","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.20","artifacts":{"ERC165":{"0.8.27":{"path":"ERC165.sol\\ERC165.json","build_id":"5860657d27e709293a6b4f4ff36a6b10"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1727956726533,"contentHash":"de0163561b417b800d01749cbbe2147e","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"IERC165":{"0.8.27":{"path":"IERC165.sol\\IERC165.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1727956726534,"contentHash":"718fa8ba0ff269c92e364c1429d9de57","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"Math":{"0.8.27":{"path":"Math.sol\\Math.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"lastModificationDate":1727956726535,"contentHash":"b6c6bdc7aaca4fe5b680760a72e09d3e","sourceName":"lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.20","artifacts":{"SignedMath":{"0.8.27":{"path":"SignedMath.sol\\SignedMath.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/common/BaseLightAccount.sol":{"lastModificationDate":1727956616525,"contentHash":"10430e8b579896a36ad3e72786325afa","sourceName":"lib/light-account/src/common/BaseLightAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/BaseAccount.sol","lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts\\samples/callback/TokenCallbackHandler.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol","lib/light-account/src/common/ERC1271.sol","lib/light-account/src/external/solady/EIP712.sol","lib/light-account/src/external/solady/UUPSUpgradeable.sol"],"versionRequirement":"^0.8.23","artifacts":{"BaseLightAccount":{"0.8.27":{"path":"BaseLightAccount.sol\\BaseLightAccount.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/common/CustomSlotInitializable.sol":{"lastModificationDate":1727956616526,"contentHash":"8859a8695544b7172e42909247381af8","sourceName":"lib/light-account/src/common/CustomSlotInitializable.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.23","artifacts":{"CustomSlotInitializable":{"0.8.27":{"path":"CustomSlotInitializable.sol\\CustomSlotInitializable.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/common/ERC1271.sol":{"lastModificationDate":1727956616526,"contentHash":"828b969da0a7b81f890268426cb00aae","sourceName":"lib/light-account/src/common/ERC1271.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/src/external/solady/EIP712.sol"],"versionRequirement":"^0.8.23","artifacts":{"ERC1271":{"0.8.27":{"path":"ERC1271.sol\\ERC1271.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/external/solady/EIP712.sol":{"lastModificationDate":1727956616527,"contentHash":"ee0cad211cd123b2053980c48786b9c6","sourceName":"lib/light-account/src/external/solady/EIP712.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"EIP712":{"0.8.27":{"path":"EIP712.sol\\EIP712.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"lib/light-account/src/external/solady/UUPSUpgradeable.sol":{"lastModificationDate":1727956616527,"contentHash":"6b4de3aa02b577c654ec91ca7520798b","sourceName":"lib/light-account/src/external/solady/UUPSUpgradeable.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"UUPSUpgradeable":{"0.8.27":{"path":"UUPSUpgradeable.sol\\UUPSUpgradeable.json","build_id":"18e48785cf879a4c6695b26209e67d9d"}}},"seenByCompiler":true},"src/BLSLightAccount.sol":{"lastModificationDate":1728011676411,"contentHash":"bd6a4f682be71aa298a808d5f4dde0a8","sourceName":"src/BLSLightAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/light-account/lib/account-abstraction/contracts\\core/BaseAccount.sol","lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts\\samples/callback/TokenCallbackHandler.sol","lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/ECDSA.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/MessageHashUtils.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/SignatureChecker.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol","lib/light-account\\src/common/BaseLightAccount.sol","lib/light-account\\src/common/CustomSlotInitializable.sol","lib/light-account/src/common/ERC1271.sol","lib/light-account/src/external/solady/EIP712.sol","lib/light-account/src/external/solady/UUPSUpgradeable.sol"],"versionRequirement":"^0.8.23","artifacts":{"BLSLightAccount":{"0.8.27":{"path":"BLSLightAccount.sol\\BLSLightAccount.json","build_id":"99b6a896a85e9a1d05cbb824f388b15b"}}},"seenByCompiler":true},"test/BLSLightAccount.sol":{"lastModificationDate":1728009635946,"contentHash":"65dc637c09fc151417010423d2e7e948","sourceName":"test/BLSLightAccount.sol","compilerSettings":{"solc":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","viaIR":false,"libraries":{}},"vyper":{"evmVersion":"paris","outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode"]}}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdToml.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src\\Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IERC165.sol","lib/forge-std/src/interfaces/IERC20.sol","lib/forge-std/src/interfaces/IERC721.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/forge-std/src/mocks/MockERC20.sol","lib/forge-std/src/mocks/MockERC721.sol","lib/forge-std/src/safeconsole.sol","lib/light-account/lib/account-abstraction/contracts\\core/BaseAccount.sol","lib/light-account\\lib/account-abstraction/contracts/core/EntryPoint.sol","lib/light-account/lib/account-abstraction/contracts\\core/Helpers.sol","lib/light-account/lib/account-abstraction/contracts/core/NonceManager.sol","lib/light-account/lib/account-abstraction/contracts/core/SenderCreator.sol","lib/light-account/lib/account-abstraction/contracts/core/StakeManager.sol","lib/light-account/lib/account-abstraction/contracts/core/UserOperationLib.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccount.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IAggregator.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/IEntryPoint.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/INonceManager.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IPaymaster.sol","lib/light-account/lib/account-abstraction/contracts/interfaces/IStakeManager.sol","lib/light-account/lib/account-abstraction/contracts\\interfaces/PackedUserOperation.sol","lib/light-account/lib/account-abstraction/contracts\\samples/callback/TokenCallbackHandler.sol","lib/light-account/lib/account-abstraction/contracts/utils/Exec.sol","lib/light-account/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC1155/IERC1155Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/token/ERC721/IERC721Receiver.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/ReentrancyGuard.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/ECDSA.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/MessageHashUtils.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/cryptography/SignatureChecker.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/ERC165.sol","lib/light-account/lib/openzeppelin-contracts\\contracts/utils/introspection/IERC165.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/light-account/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol","lib/light-account\\src/common/BaseLightAccount.sol","lib/light-account\\src/common/CustomSlotInitializable.sol","lib/light-account/src/common/ERC1271.sol","lib/light-account/src/external/solady/EIP712.sol","lib/light-account/src/external/solady/UUPSUpgradeable.sol","src\\BLSLightAccount.sol"],"versionRequirement":"^0.8.0","artifacts":{"BLSLightAccountTest":{"0.8.27":{"path":"BLSLightAccount.sol\\BLSLightAccountTest.json","build_id":"99b6a896a85e9a1d05cbb824f388b15b"}}},"seenByCompiler":true}},"builds":["18e48785cf879a4c6695b26209e67d9d","5860657d27e709293a6b4f4ff36a6b10","99b6a896a85e9a1d05cbb824f388b15b"]} \ No newline at end of file diff --git a/src/BLSLightAccount.sol b/src/BLSLightAccount.sol index 33bc4de..52abe2e 100644 --- a/src/BLSLightAccount.sol +++ b/src/BLSLightAccount.sol @@ -37,6 +37,28 @@ contract BLSLightAccount is BaseLightAccount, CustomSlotInitializable { using ECDSA for bytes32; using MessageHashUtils for bytes32; + bytes32 private blsPublicKey; + + enum ExtendSignatureType { + EOA, + CONTRACT, + CONTRACT_WITH_ADDR, + reserve_3, + reserve_4, + reserve_5, + reserve_6, + reserve_7, + reserve_8, + reserve_9, + reserve_10, + reserve_11, + reserve_12, + reserve_13, + reserve_14, + reserve_15, + BLS + } + /// @dev The version used for namespaced storage is not linked to the release version of the contract. Storage /// versions will be updated only when storage layout changes are made. /// keccak256(abi.encode(uint256(keccak256("blslight_account_v1.storage")) - 1)) & ~bytes32(uint256(0xff)); @@ -63,6 +85,11 @@ contract BLSLightAccount is BaseLightAccount, CustomSlotInitializable { /// @dev The new owner is not a valid owner (e.g., `address(0)`, the account itself, or the current owner). error InvalidOwner(address owner); + /// @notice Emitted when the BLS public key is updated. + /// @param oldPublicKey The old BLS public key. + /// @param newPublicKey The new BLS public key. + event BlsPublicKeyUpdated(bytes32 indexed oldPublicKey, bytes32 indexed newPublicKey); + constructor(IEntryPoint entryPoint_) CustomSlotInitializable(_INITIALIZABLE_STORAGE_POSITION) { _ENTRY_POINT = entryPoint_; // _disableInitializers(); @@ -74,8 +101,20 @@ contract BLSLightAccount is BaseLightAccount, CustomSlotInitializable { /// implementation of LightAccount must be deployed with the new entry point address, and then `upgradeToAndCall` /// must be called to upgrade the implementation. /// @param owner_ The initial owner of the account. - function initialize(address owner_) external initializer { + function initialize(address owner_, bytes32 blsPublicKey_) external initializer { _initialize(owner_); + blsPublicKey = blsPublicKey_; + } + + function setBlsPublicKey(bytes32 newBlsPublicKey) external { + require(msg.sender == owner(), "Only authorized accounts can perform this action"); + bytes32 oldPublicKey = blsPublicKey; + blsPublicKey = newBlsPublicKey; + emit BlsPublicKeyUpdated(oldPublicKey, newBlsPublicKey); + } + + function getBlsPublicKey() public view returns (bytes32) { + return blsPublicKey; } /// @notice Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current @@ -126,19 +165,35 @@ contract BLSLightAccount is BaseLightAccount, CustomSlotInitializable { revert InvalidSignatureType(); } uint8 signatureType = uint8(userOp.signature[0]); - if (signatureType == uint8(SignatureType.EOA)) { + if (signatureType == uint8(ExtendSignatureType.EOA)) { // EOA signature bytes32 signedHash = userOpHash.toEthSignedMessageHash(); bytes memory signature = userOp.signature[1:]; return _successToValidationData(_isValidEOAOwnerSignature(signedHash, signature)); - } else if (signatureType == uint8(SignatureType.CONTRACT)) { + } else if (signatureType == uint8(ExtendSignatureType.CONTRACT)) { // Contract signature without address bytes memory signature = userOp.signature[1:]; return _successToValidationData(_isValidContractOwnerSignatureNow(userOpHash, signature)); + } else if (signatureType == uint8(ExtendSignatureType.BLS)) { + // BLS signature + bytes memory signature = userOp.signature[1:]; + return _successToValidationData(_isValidBlsSignature(userOp, signature)); } revert InvalidSignatureType(); } + /// @dev Validates a BLS signature + function _isValidBlsSignature(PackedUserOperation calldata userOp, bytes memory signature) + internal + view + returns (bool) + { + // TODO: Implement BLS signature validation + // This will require an external library or precompile for BLS operations + // For now, we'll just revert to indicate it's not implemented + revert("BLS signature validation not implemented"); + } + /// @notice Check if the signature is a valid by the EOA owner for the given digest. /// @dev Only supports 65-byte signatures, and uses the digest directly. Reverts if the signature is malformed. /// @param digest The digest to be checked. diff --git a/test/BLSLightAccount.sol b/test/BLSLightAccount.sol index 8106bac..a86eb58 100644 --- a/test/BLSLightAccount.sol +++ b/test/BLSLightAccount.sol @@ -16,23 +16,34 @@ contract BLSLightAccountTest is Test { function testInitialize() public { address owner = address(this); + bytes32 blsPublicKey = keccak256(bytes("blsPublicKey")); - // 初始化合约 - account.initialize(owner); + account.initialize(owner, blsPublicKey); - // 检查初始化后的状态 assertEq(account.owner(), owner); + assertEq(account.getBlsPublicKey(), blsPublicKey); } function testInitializeRevert() public { address owner = address(this); + bytes32 blsPublicKey = keccak256(bytes("blsPublicKey")); - // 第一次初始化合约 - account.initialize(owner); + account.initialize(owner, blsPublicKey); - // 尝试再次初始化合约,应该失败 bytes memory errorSelector = abi.encodeWithSelector(CustomSlotInitializable.InvalidInitialization.selector); vm.expectRevert(errorSelector); - account.initialize(owner); + account.initialize(owner, blsPublicKey); + } + + function testSetBlsPublicKey() public { + address owner = address(this); + bytes32 blsPublicKey = keccak256(bytes("blsPublicKey")); + bytes32 newBlsPublicKey = keccak256(bytes("newBlsPublicKey")); + + account.initialize(owner, blsPublicKey); + + account.setBlsPublicKey(newBlsPublicKey); + + assertEq(account.getBlsPublicKey(), newBlsPublicKey); } }