{"abi":[{"type":"function","name":"getMessageHash","inputs":[{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"signMessage","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"SignMsg","inputs":[{"name":"msgHash","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false}],"bytecode":{"object":"0x608060405234801561000f575f80fd5b5061040d8061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610034575f3560e01c80630a1028c41461003857806385a5affe1461005d575b5f80fd5b61004b6100463660046102b4565b610072565b60405190815260200160405180910390f35b61007061006b36600461037d565b610207565b005b5f807f60b3cbf8b4a223d68d641b3b6ddf9a298e7f33710cf3d3a9d1146b5a6150fbca5f1b83805190602001206040516020016100b9929190918252602082015260400190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815282825280516020918201207ff698da2500000000000000000000000000000000000000000000000000000000845291519193507f1900000000000000000000000000000000000000000000000000000000000000927f010000000000000000000000000000000000000000000000000000000000000092309263f698da2592600480820193918290030181865afa158015610181573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a591906103e9565b6040517fff00000000000000000000000000000000000000000000000000000000000000938416602082015292909116602183015260228201526042810182905260620160405160208183030381529060405280519060200120915050919050565b5f61024683838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061007292505050565b5f81815260076020526040808220600190555191925082917fe7f4675038f4f6034dfcbbb24c4dc08e4ebf10eb9d257d3d02c0f38d122ac6e49190a2505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f602082840312156102c4575f80fd5b813567ffffffffffffffff808211156102db575f80fd5b818401915084601f8301126102ee575f80fd5b81358181111561030057610300610287565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561034657610346610287565b8160405282815287602084870101111561035e575f80fd5b826020860160208301375f928101602001929092525095945050505050565b5f806020838503121561038e575f80fd5b823567ffffffffffffffff808211156103a5575f80fd5b818501915085601f8301126103b8575f80fd5b8135818111156103c6575f80fd5b8660208285010111156103d7575f80fd5b60209290920196919550909350505050565b5f602082840312156103f9575f80fd5b505191905056fea164736f6c6343000814000a","sourceMap":"265:1185:54:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b5060043610610034575f3560e01c80630a1028c41461003857806385a5affe1461005d575b5f80fd5b61004b6100463660046102b4565b610072565b60405190815260200160405180910390f35b61007061006b36600461037d565b610207565b005b5f807f60b3cbf8b4a223d68d641b3b6ddf9a298e7f33710cf3d3a9d1146b5a6150fbca5f1b83805190602001206040516020016100b9929190918252602082015260400190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815282825280516020918201207ff698da2500000000000000000000000000000000000000000000000000000000845291519193507f1900000000000000000000000000000000000000000000000000000000000000927f010000000000000000000000000000000000000000000000000000000000000092309263f698da2592600480820193918290030181865afa158015610181573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a591906103e9565b6040517fff00000000000000000000000000000000000000000000000000000000000000938416602082015292909116602183015260228201526042810182905260620160405160208183030381529060405280519060200120915050919050565b5f61024683838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061007292505050565b5f81815260076020526040808220600190555191925082917fe7f4675038f4f6034dfcbbb24c4dc08e4ebf10eb9d257d3d02c0f38d122ac6e49190a2505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f602082840312156102c4575f80fd5b813567ffffffffffffffff808211156102db575f80fd5b818401915084601f8301126102ee575f80fd5b81358181111561030057610300610287565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561034657610346610287565b8160405282815287602084870101111561035e575f80fd5b826020860160208301375f928101602001929092525095945050505050565b5f806020838503121561038e575f80fd5b823567ffffffffffffffff808211156103a5575f80fd5b818501915085601f8301126103b8575f80fd5b8135818111156103c6575f80fd5b8660208285010111156103d7575f80fd5b60209290920196919550909350505050565b5f602082840312156103f9575f80fd5b505191905056fea164736f6c6343000814000a","sourceMap":"265:1185:54:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1114:334;;;;;;:::i;:::-;;:::i;:::-;;;1334:25:96;;;1322:2;1307:18;1114:334:54;;;;;;;780:176;;;;;;:::i;:::-;;:::i;:::-;;1114:334;1181:7;1200:23;426:66;1247:17;;1276:7;1266:18;;;;;;1236:49;;;;;;;;2140:25:96;;;2196:2;2181:18;;2174:34;2128:2;2113:18;;1966:248;1236:49:54;;;;;;;;;;;;;;1226:60;;1236:49;1226:60;;;;1370:52;;;;;1226:60;;-1:-1:-1;1342:12:54;;1356;;1397:4;;1370:50;;:52;;;;;;;;;;;1397:4;1370:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1325:115;;2627:66:96;2714:15;;;1325:115:54;;;2702:28:96;2759:15;;;;2746:11;;;2739:36;2791:11;;;2784:27;2827:12;;;2820:28;;;2864:12;;1325:115:54;;;;;;;;;;;;1315:126;;;;;;1296:145;;;1114:334;;;:::o;780:176::-;842:15;860:21;875:5;;860:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;860:14:54;;-1:-1:-1;;;860:21:54:i;:::-;891:23;;;;:14;:23;;;;;;917:1;891:27;;933:16;842:39;;-1:-1:-1;842:39:54;;933:16;;891:23;933:16;832:124;780:176;;:::o;14:184:96:-;66:77;63:1;56:88;163:4;160:1;153:15;187:4;184:1;177:15;203:980;271:6;324:2;312:9;303:7;299:23;295:32;292:52;;;340:1;337;330:12;292:52;380:9;367:23;409:18;450:2;442:6;439:14;436:34;;;466:1;463;456:12;436:34;504:6;493:9;489:22;479:32;;549:7;542:4;538:2;534:13;530:27;520:55;;571:1;568;561:12;520:55;607:2;594:16;629:2;625;622:10;619:36;;;635:18;;:::i;:::-;769:2;763:9;831:4;823:13;;674:66;819:22;;;843:2;815:31;811:40;799:53;;;867:18;;;887:22;;;864:46;861:72;;;913:18;;:::i;:::-;953:10;949:2;942:22;988:2;980:6;973:18;1028:7;1023:2;1018;1014;1010:11;1006:20;1003:33;1000:53;;;1049:1;1046;1039:12;1000:53;1105:2;1100;1096;1092:11;1087:2;1079:6;1075:15;1062:46;1150:1;1128:15;;;1145:2;1124:24;1117:35;;;;-1:-1:-1;1132:6:96;203:980;-1:-1:-1;;;;;203:980:96:o;1370:591::-;1440:6;1448;1501:2;1489:9;1480:7;1476:23;1472:32;1469:52;;;1517:1;1514;1507:12;1469:52;1557:9;1544:23;1586:18;1627:2;1619:6;1616:14;1613:34;;;1643:1;1640;1633:12;1613:34;1681:6;1670:9;1666:22;1656:32;;1726:7;1719:4;1715:2;1711:13;1707:27;1697:55;;1748:1;1745;1738:12;1697:55;1788:2;1775:16;1814:2;1806:6;1803:14;1800:34;;;1830:1;1827;1820:12;1800:34;1875:7;1870:2;1861:6;1857:2;1853:15;1849:24;1846:37;1843:57;;;1896:1;1893;1886:12;1843:57;1927:2;1919:11;;;;;1949:6;;-1:-1:-1;1370:591:96;;-1:-1:-1;;;;1370:591:96:o;2219:184::-;2289:6;2342:2;2330:9;2321:7;2317:23;2313:32;2310:52;;;2358:1;2355;2348:12;2310:52;-1:-1:-1;2381:16:96;;2219:184;-1:-1:-1;2219:184:96:o","linkReferences":{}},"methodIdentifiers":{"getMessageHash(bytes)":"0a1028c4","signMessage(bytes)":"85a5affe"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"msgHash\",\"type\":\"bytes32\"}],\"name\":\"SignMsg\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"message\",\"type\":\"bytes\"}],\"name\":\"getMessageHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"signMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Richard Meissner - <richard@gnosis.io>\",\"kind\":\"dev\",\"methods\":{\"getMessageHash(bytes)\":{\"details\":\"Returns hash of a message that can be signed by owners.\",\"params\":{\"message\":\"Message that should be hashed\"},\"returns\":{\"_0\":\"Message hash.\"}},\"signMessage(bytes)\":{\"details\":\"Marks a message as signed, so that it can be used with EIP-1271\",\"params\":{\"_data\":\"Arbitrary length data that should be marked as signed on the behalf of address(this)\"}}},\"title\":\"SignMessageLib - Allows to set an entry in the signedMessages\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"signMessage(bytes)\":{\"notice\":\"Marks a message (`_data`) as signed.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol\":\"SignMessageLib\"},\"evmVersion\":\"shanghai\",\"libraries\":{\"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker\":\"0x4200000000000000000000000000000000000776\"},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":999999},\"remappings\":[\":@lib-keccak/=lib/lib-keccak/contracts/lib/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/\",\":@rari-capital/solmate/=lib/solmate/\",\":@solady-test/=lib/lib-keccak/lib/solady/test/\",\":@solady/=lib/solady/src/\",\":automate/=lib/automate/contracts/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":gelato/=lib/automate/contracts/\",\":hardhat/=lib/automate/node_modules/hardhat/\",\":kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/\",\":lib-keccak/=lib/lib-keccak/contracts/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/\",\":prb-test/=lib/automate/lib/prb-test/src/\",\":prb/-est/=lib/automate/lib/prb-test/src/\",\":safe-contracts/=lib/safe-contracts/contracts/\",\":solady/=lib/solady/\",\":solmate/=lib/solmate/src/\"]},\"sources\":{\"lib/safe-contracts/contracts/GnosisSafe.sol\":{\"keccak256\":\"0x2ca9e3e053c969b9364f62c50c2c25b92525db7fd0bad3ae1fb0c20dd575367c\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ef1bceac49ae93b31aec41380862fdc267823c41e2dfefb9b7d70d0996e858e1\",\"dweb:/ipfs/QmWFU5bic2CGv8QgQ8bxJnjMfuJgNL2zZubt5hvzhcRZPc\"]},\"lib/safe-contracts/contracts/base/Executor.sol\":{\"keccak256\":\"0x4d3a900673473466bc27413fdbb11aae60b5580b792c49411f01544e0b24fe08\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://71ada0590998f47d1ee9759aa190c82d4b348d59a2f582747650d9720245a309\",\"dweb:/ipfs/Qmb9UudLoJpPutHVP9pXd1poP5CqFf5sxVFuYw14SYfRFk\"]},\"lib/safe-contracts/contracts/base/FallbackManager.sol\":{\"keccak256\":\"0x1be9f0f3e80a78134c2e3a026c6a14759785bd35d135e87a4a025aeb6742791f\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://44130f09921e895c0b9d7797de1d64940a8c43391efcda3a0208cb9ad96475a7\",\"dweb:/ipfs/QmUur4hzvCJ68PnW6zQFpemAMH2DH5mExPqSZdpKeY1ZRN\"]},\"lib/safe-contracts/contracts/base/GuardManager.sol\":{\"keccak256\":\"0x53a532a31f9632d5a73ad0df56f05bd2b66a2f781f571eb48d00367d370707f9\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://eebc15cb7c83cf9516514b34bd16fb19c08104c738fa172ae3c98c66b84708ed\",\"dweb:/ipfs/QmfJ4yX5WwHU58QVoxJFaejyerscTs6VCgn2TdUVrEZeTP\"]},\"lib/safe-contracts/contracts/base/ModuleManager.sol\":{\"keccak256\":\"0x5512760a0328309f82a71cbe2ac14e0942501b9d44d5fb417bd02174546672e5\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://763cf803a98a921d62ed51d7876a13aed63968c828f026ce2beb747d2631c0bc\",\"dweb:/ipfs/QmbHZoYsbkxC2kVCs4pQ4nRaFrcgU5X8FuLX7vV3qDR9Y5\"]},\"lib/safe-contracts/contracts/base/OwnerManager.sol\":{\"keccak256\":\"0x01a3d64cc0967f42ae63802409f5404d18352516ea2a6335005003d919ffcf12\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://91824103f2966612103705d6493290e193b0c0ca2bbe7141965184435dbb999b\",\"dweb:/ipfs/Qmd7u917v4DnD4hvQGAGbchVJ8A7pm1UCzCv7sAzQnRoi4\"]},\"lib/safe-contracts/contracts/common/Enum.sol\":{\"keccak256\":\"0x473e45b1a5cc47be494b0e123c9127f0c11c1e0992a321ae5a644c0bfdb2c14f\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://948e6d5a8bd7377f7795b6e28584eab9be5c0a8db240bf5e606744a175238c3d\",\"dweb:/ipfs/QmQQaUmQfpuejV41jbxKSTgEBYYCcVTjCsDMgf2htgz6ej\"]},\"lib/safe-contracts/contracts/common/EtherPaymentFallback.sol\":{\"keccak256\":\"0x1a7928d29877da84a3d0df846d5cd933d48ee095c1bde0aa044e249b12e27a72\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://962fc098cfdd8a43cc7d294c1105718ea985cacf1172ea0426f7370e2096b830\",\"dweb:/ipfs/QmdZrxJ7dSWuTjbrN133YiRDLwYQr21zLr3CqWWtowY9Gu\"]},\"lib/safe-contracts/contracts/common/SecuredTokenTransfer.sol\":{\"keccak256\":\"0x178682d8477da42936c7e8e24d39094c4ac08ecd8623794b9535d77001b665f1\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://2ae8a6d5c7d4cc19c3b957c8857e87e92a4570effebf32ba54184c2b8375a0a2\",\"dweb:/ipfs/QmVNgRcRVgQZriJm8KVXQvRbHQf74wH7ABmBNTjBTqBa8r\"]},\"lib/safe-contracts/contracts/common/SelfAuthorized.sol\":{\"keccak256\":\"0x59d36efca578b75541a776f62a0d0ef03712fc27b6647c3915c14b572106d7bc\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://8530c6e0392415d42486847cd4368d30f6cac42051596330692a571fcdbb9e29\",\"dweb:/ipfs/QmWw51Pshw5t2sMKANzxtfNdBSQUyQQpfTr3Mi7oNJGk7U\"]},\"lib/safe-contracts/contracts/common/SignatureDecoder.sol\":{\"keccak256\":\"0x2d37be182472ccfee62a33e9939f9b3d509be4c32e9fdebc2c1746c573655987\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://f76d96f10640beee7d4b4ad119bd3c64aeb26929011d9c1eec738c63ebc92f63\",\"dweb:/ipfs/QmaqgDocQumKeyUMgZU7STzpTASQjDbUxbQKuZ17xhLaXz\"]},\"lib/safe-contracts/contracts/common/Singleton.sol\":{\"keccak256\":\"0x6e02c18998de8834dd7d69890cb6ede996b6f635d2337081a596d91e35e2c648\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ce1dfe9f820352b6f95b350ac0b3fa8afc24ad77bffffc2c9e00462e2a41a666\",\"dweb:/ipfs/QmVr2dCUbNbg5e7UsgngGij5mybgkXcbf5e5cPhT21aFXA\"]},\"lib/safe-contracts/contracts/common/StorageAccessible.sol\":{\"keccak256\":\"0x36853adb266c2ab7d3c612aca799441a86bd15d9e1d24fc6c70d63f5c2df3aaf\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://3f210f47e032444049040d2929b32e02089aac1d05b07dcd77ee34bb63505dfa\",\"dweb:/ipfs/QmbE8GXFAbthieTL51S2XPF5URyPaj1tDubVuhztkSoiPo\"]},\"lib/safe-contracts/contracts/examples/libraries/GnosisSafeStorage.sol\":{\"keccak256\":\"0xecfd0d8a43d859ef1fb8161cb21ce5d38461603383378a5b1c4c7d5d4a3bfbf3\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://4248ba92a7d4b9c24344944427b7a2f092f2328d57d39317f4a9f178f503beb5\",\"dweb:/ipfs/QmUFuLoQRjZdx7fsDEprFstuDjLQ7em3syagHA8b8AD2Sa\"]},\"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol\":{\"keccak256\":\"0x7f614aba3414613ddee5699b92745cdd79be6f296e796a8a917bdf9699de4602\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://6d3dd0b132b1f84fe924bb852d271ce6dff741f745b1d26ac337f316262b643b\",\"dweb:/ipfs/QmbLgdGcsaST7SYPxMBoXAdoTM4rmTk4Mj4T9xHucUZboH\"]},\"lib/safe-contracts/contracts/external/GnosisSafeMath.sol\":{\"keccak256\":\"0x2a2b4d74f5834a9437be0cd3254d7a676698fc78aa47941c2009470196998d98\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://ea04449ba8b78ec44f3463b68cbce971875626e91d028add50900c41101a1156\",\"dweb:/ipfs/QmR95ci4HVkJuyYGvYRHVpp6N3wefu5WVDhipKwRechWV6\"]},\"lib/safe-contracts/contracts/interfaces/ISignatureValidator.sol\":{\"keccak256\":\"0x5b6e9bf17f28738ce88e751f420b0559f5151ba7bec2ff3c7bb31e42673d6801\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://bfdde8390deb619e38f98be67c5f9d26f12623855540af76b9f454142d3896c1\",\"dweb:/ipfs/QmZrr1ocToR5S62W177qV2csfs7wCQNs3t9vatyx32uLXz\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.20+commit.a1b79de6"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32","indexed":true}],"type":"event","name":"SignMsg","anonymous":false},{"inputs":[{"internalType":"bytes","name":"message","type":"bytes"}],"stateMutability":"view","type":"function","name":"getMessageHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"signMessage"}],"devdoc":{"kind":"dev","methods":{"getMessageHash(bytes)":{"details":"Returns hash of a message that can be signed by owners.","params":{"message":"Message that should be hashed"},"returns":{"_0":"Message hash."}},"signMessage(bytes)":{"details":"Marks a message as signed, so that it can be used with EIP-1271","params":{"_data":"Arbitrary length data that should be marked as signed on the behalf of address(this)"}}},"version":1},"userdoc":{"kind":"user","methods":{"signMessage(bytes)":{"notice":"Marks a message (`_data`) as signed."}},"version":1}},"settings":{"remappings":["@lib-keccak/=lib/lib-keccak/contracts/lib/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/","@rari-capital/solmate/=lib/solmate/","@solady-test/=lib/lib-keccak/lib/solady/test/","@solady/=lib/solady/src/","automate/=lib/automate/contracts/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","gelato/=lib/automate/contracts/","hardhat/=lib/automate/node_modules/hardhat/","kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/","lib-keccak/=lib/lib-keccak/contracts/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/","prb-test/=lib/automate/lib/prb-test/src/","prb/-est/=lib/automate/lib/prb-test/src/","safe-contracts/=lib/safe-contracts/contracts/","solady/=lib/solady/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":999999},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol":"SignMessageLib"},"evmVersion":"shanghai","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"lib/safe-contracts/contracts/GnosisSafe.sol":{"keccak256":"0x2ca9e3e053c969b9364f62c50c2c25b92525db7fd0bad3ae1fb0c20dd575367c","urls":["bzz-raw://ef1bceac49ae93b31aec41380862fdc267823c41e2dfefb9b7d70d0996e858e1","dweb:/ipfs/QmWFU5bic2CGv8QgQ8bxJnjMfuJgNL2zZubt5hvzhcRZPc"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/Executor.sol":{"keccak256":"0x4d3a900673473466bc27413fdbb11aae60b5580b792c49411f01544e0b24fe08","urls":["bzz-raw://71ada0590998f47d1ee9759aa190c82d4b348d59a2f582747650d9720245a309","dweb:/ipfs/Qmb9UudLoJpPutHVP9pXd1poP5CqFf5sxVFuYw14SYfRFk"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/FallbackManager.sol":{"keccak256":"0x1be9f0f3e80a78134c2e3a026c6a14759785bd35d135e87a4a025aeb6742791f","urls":["bzz-raw://44130f09921e895c0b9d7797de1d64940a8c43391efcda3a0208cb9ad96475a7","dweb:/ipfs/QmUur4hzvCJ68PnW6zQFpemAMH2DH5mExPqSZdpKeY1ZRN"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/GuardManager.sol":{"keccak256":"0x53a532a31f9632d5a73ad0df56f05bd2b66a2f781f571eb48d00367d370707f9","urls":["bzz-raw://eebc15cb7c83cf9516514b34bd16fb19c08104c738fa172ae3c98c66b84708ed","dweb:/ipfs/QmfJ4yX5WwHU58QVoxJFaejyerscTs6VCgn2TdUVrEZeTP"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/ModuleManager.sol":{"keccak256":"0x5512760a0328309f82a71cbe2ac14e0942501b9d44d5fb417bd02174546672e5","urls":["bzz-raw://763cf803a98a921d62ed51d7876a13aed63968c828f026ce2beb747d2631c0bc","dweb:/ipfs/QmbHZoYsbkxC2kVCs4pQ4nRaFrcgU5X8FuLX7vV3qDR9Y5"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/base/OwnerManager.sol":{"keccak256":"0x01a3d64cc0967f42ae63802409f5404d18352516ea2a6335005003d919ffcf12","urls":["bzz-raw://91824103f2966612103705d6493290e193b0c0ca2bbe7141965184435dbb999b","dweb:/ipfs/Qmd7u917v4DnD4hvQGAGbchVJ8A7pm1UCzCv7sAzQnRoi4"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/Enum.sol":{"keccak256":"0x473e45b1a5cc47be494b0e123c9127f0c11c1e0992a321ae5a644c0bfdb2c14f","urls":["bzz-raw://948e6d5a8bd7377f7795b6e28584eab9be5c0a8db240bf5e606744a175238c3d","dweb:/ipfs/QmQQaUmQfpuejV41jbxKSTgEBYYCcVTjCsDMgf2htgz6ej"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/EtherPaymentFallback.sol":{"keccak256":"0x1a7928d29877da84a3d0df846d5cd933d48ee095c1bde0aa044e249b12e27a72","urls":["bzz-raw://962fc098cfdd8a43cc7d294c1105718ea985cacf1172ea0426f7370e2096b830","dweb:/ipfs/QmdZrxJ7dSWuTjbrN133YiRDLwYQr21zLr3CqWWtowY9Gu"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/SecuredTokenTransfer.sol":{"keccak256":"0x178682d8477da42936c7e8e24d39094c4ac08ecd8623794b9535d77001b665f1","urls":["bzz-raw://2ae8a6d5c7d4cc19c3b957c8857e87e92a4570effebf32ba54184c2b8375a0a2","dweb:/ipfs/QmVNgRcRVgQZriJm8KVXQvRbHQf74wH7ABmBNTjBTqBa8r"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/SelfAuthorized.sol":{"keccak256":"0x59d36efca578b75541a776f62a0d0ef03712fc27b6647c3915c14b572106d7bc","urls":["bzz-raw://8530c6e0392415d42486847cd4368d30f6cac42051596330692a571fcdbb9e29","dweb:/ipfs/QmWw51Pshw5t2sMKANzxtfNdBSQUyQQpfTr3Mi7oNJGk7U"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/SignatureDecoder.sol":{"keccak256":"0x2d37be182472ccfee62a33e9939f9b3d509be4c32e9fdebc2c1746c573655987","urls":["bzz-raw://f76d96f10640beee7d4b4ad119bd3c64aeb26929011d9c1eec738c63ebc92f63","dweb:/ipfs/QmaqgDocQumKeyUMgZU7STzpTASQjDbUxbQKuZ17xhLaXz"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/Singleton.sol":{"keccak256":"0x6e02c18998de8834dd7d69890cb6ede996b6f635d2337081a596d91e35e2c648","urls":["bzz-raw://ce1dfe9f820352b6f95b350ac0b3fa8afc24ad77bffffc2c9e00462e2a41a666","dweb:/ipfs/QmVr2dCUbNbg5e7UsgngGij5mybgkXcbf5e5cPhT21aFXA"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/common/StorageAccessible.sol":{"keccak256":"0x36853adb266c2ab7d3c612aca799441a86bd15d9e1d24fc6c70d63f5c2df3aaf","urls":["bzz-raw://3f210f47e032444049040d2929b32e02089aac1d05b07dcd77ee34bb63505dfa","dweb:/ipfs/QmbE8GXFAbthieTL51S2XPF5URyPaj1tDubVuhztkSoiPo"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/examples/libraries/GnosisSafeStorage.sol":{"keccak256":"0xecfd0d8a43d859ef1fb8161cb21ce5d38461603383378a5b1c4c7d5d4a3bfbf3","urls":["bzz-raw://4248ba92a7d4b9c24344944427b7a2f092f2328d57d39317f4a9f178f503beb5","dweb:/ipfs/QmUFuLoQRjZdx7fsDEprFstuDjLQ7em3syagHA8b8AD2Sa"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol":{"keccak256":"0x7f614aba3414613ddee5699b92745cdd79be6f296e796a8a917bdf9699de4602","urls":["bzz-raw://6d3dd0b132b1f84fe924bb852d271ce6dff741f745b1d26ac337f316262b643b","dweb:/ipfs/QmbLgdGcsaST7SYPxMBoXAdoTM4rmTk4Mj4T9xHucUZboH"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/external/GnosisSafeMath.sol":{"keccak256":"0x2a2b4d74f5834a9437be0cd3254d7a676698fc78aa47941c2009470196998d98","urls":["bzz-raw://ea04449ba8b78ec44f3463b68cbce971875626e91d028add50900c41101a1156","dweb:/ipfs/QmR95ci4HVkJuyYGvYRHVpp6N3wefu5WVDhipKwRechWV6"],"license":"LGPL-3.0-only"},"lib/safe-contracts/contracts/interfaces/ISignatureValidator.sol":{"keccak256":"0x5b6e9bf17f28738ce88e751f420b0559f5151ba7bec2ff3c7bb31e42673d6801","urls":["bzz-raw://bfdde8390deb619e38f98be67c5f9d26f12623855540af76b9f454142d3896c1","dweb:/ipfs/QmZrr1ocToR5S62W177qV2csfs7wCQNs3t9vatyx32uLXz"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":50962,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"singleton","offset":0,"slot":"0","type":"t_address"},{"astId":50966,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"modules","offset":0,"slot":"1","type":"t_mapping(t_address,t_address)"},{"astId":50970,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"owners","offset":0,"slot":"2","type":"t_mapping(t_address,t_address)"},{"astId":50972,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"ownerCount","offset":0,"slot":"3","type":"t_uint256"},{"astId":50974,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"threshold","offset":0,"slot":"4","type":"t_uint256"},{"astId":50976,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"nonce","offset":0,"slot":"5","type":"t_bytes32"},{"astId":50978,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"domainSeparator","offset":0,"slot":"6","type":"t_bytes32"},{"astId":50982,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"signedMessages","offset":0,"slot":"7","type":"t_mapping(t_bytes32,t_uint256)"},{"astId":50988,"contract":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol:SignMessageLib","label":"approvedHashes","offset":0,"slot":"8","type":"t_mapping(t_address,t_mapping(t_bytes32,t_uint256))"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_mapping(t_address,t_address)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address)","numberOfBytes":"32","value":"t_address"},"t_mapping(t_address,t_mapping(t_bytes32,t_uint256))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes32 => uint256))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_uint256)"},"t_mapping(t_bytes32,t_uint256)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"userdoc":{"version":1,"kind":"user","methods":{"signMessage(bytes)":{"notice":"Marks a message (`_data`) as signed."}}},"devdoc":{"version":1,"kind":"dev","author":"Richard Meissner - <richard@gnosis.io>","methods":{"getMessageHash(bytes)":{"details":"Returns hash of a message that can be signed by owners.","params":{"message":"Message that should be hashed"},"returns":{"_0":"Message hash."}},"signMessage(bytes)":{"details":"Marks a message as signed, so that it can be used with EIP-1271","params":{"_data":"Arbitrary length data that should be marked as signed on the behalf of address(this)"}}},"title":"SignMessageLib - Allows to set an entry in the signedMessages"},"ast":{"absolutePath":"lib/safe-contracts/contracts/examples/libraries/SignMessage.sol","id":51075,"exportedSymbols":{"Enum":[50807],"EtherPaymentFallback":[50829],"Executor":[49793],"FallbackManager":[49844],"GnosisSafe":[49761],"GnosisSafeMath":[51180],"GnosisSafeStorage":[50989],"Guard":[49882],"GuardManager":[49922],"ISignatureValidator":[51285],"ISignatureValidatorConstants":[51272],"ModuleManager":[50289],"OwnerManager":[50800],"SecuredTokenTransfer":[50856],"SelfAuthorized":[50882],"SignMessageLib":[51074],"SignatureDecoder":[50902],"Singleton":[50908],"StorageAccessible":[50957]},"nodeType":"SourceUnit","src":"42:1409:54","nodes":[{"id":50991,"nodeType":"PragmaDirective","src":"42:31:54","nodes":[],"literals":["solidity",">=","0.7",".0","<","0.9",".0"]},{"id":50992,"nodeType":"ImportDirective","src":"75:33:54","nodes":[],"absolutePath":"lib/safe-contracts/contracts/examples/libraries/GnosisSafeStorage.sol","file":"./GnosisSafeStorage.sol","nameLocation":"-1:-1:-1","scope":51075,"sourceUnit":50990,"symbolAliases":[],"unitAlias":""},{"id":50993,"nodeType":"ImportDirective","src":"109:30:54","nodes":[],"absolutePath":"lib/safe-contracts/contracts/GnosisSafe.sol","file":"../../GnosisSafe.sol","nameLocation":"-1:-1:-1","scope":51075,"sourceUnit":49762,"symbolAliases":[],"unitAlias":""},{"id":51074,"nodeType":"ContractDefinition","src":"265:1185:54","nodes":[{"id":50999,"nodeType":"VariableDeclaration","src":"381:111:54","nodes":[],"constant":true,"mutability":"constant","name":"SAFE_MSG_TYPEHASH","nameLocation":"406:17:54","scope":51074,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":50997,"name":"bytes32","nodeType":"ElementaryTypeName","src":"381:7:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"hexValue":"307836306233636266386234613232336436386436343162336236646466396132393865376633333731306366336433613964313134366235613631353066626361","id":50998,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"426:66:54","typeDescriptions":{"typeIdentifier":"t_rational_43739706848186989041152069077571617734008543096732098246335109361212071148490_by_1","typeString":"int_const 4373...(69 digits omitted)...8490"},"value":"0x60b3cbf8b4a223d68d641b3b6ddf9a298e7f33710cf3d3a9d1146b5a6150fbca"},"visibility":"private"},{"id":51003,"nodeType":"EventDefinition","src":"499:39:54","nodes":[],"anonymous":false,"eventSelector":"e7f4675038f4f6034dfcbbb24c4dc08e4ebf10eb9d257d3d02c0f38d122ac6e4","name":"SignMsg","nameLocation":"505:7:54","parameters":{"id":51002,"nodeType":"ParameterList","parameters":[{"constant":false,"id":51001,"indexed":true,"mutability":"mutable","name":"msgHash","nameLocation":"529:7:54","nodeType":"VariableDeclaration","scope":51003,"src":"513:23:54","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":51000,"name":"bytes32","nodeType":"ElementaryTypeName","src":"513:7:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"512:25:54"}},{"id":51026,"nodeType":"FunctionDefinition","src":"780:176:54","nodes":[],"body":{"id":51025,"nodeType":"Block","src":"832:124:54","nodes":[],"statements":[{"assignments":[51010],"declarations":[{"constant":false,"id":51010,"mutability":"mutable","name":"msgHash","nameLocation":"850:7:54","nodeType":"VariableDeclaration","scope":51025,"src":"842:15:54","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":51009,"name":"bytes32","nodeType":"ElementaryTypeName","src":"842:7:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":51014,"initialValue":{"arguments":[{"id":51012,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51006,"src":"875:5:54","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"id":51011,"name":"getMessageHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51073,"src":"860:14:54","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) view returns (bytes32)"}},"id":51013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"860:21:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"842:39:54"},{"expression":{"id":51019,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":51015,"name":"signedMessages","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":50982,"src":"891:14:54","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_uint256_$","typeString":"mapping(bytes32 => uint256)"}},"id":51017,"indexExpression":{"id":51016,"name":"msgHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51010,"src":"906:7:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"891:23:54","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"31","id":51018,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"917:1:54","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"891:27:54","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":51020,"nodeType":"ExpressionStatement","src":"891:27:54"},{"eventCall":{"arguments":[{"id":51022,"name":"msgHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51010,"src":"941:7:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":51021,"name":"SignMsg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51003,"src":"933:7:54","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$returns$__$","typeString":"function (bytes32)"}},"id":51023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"933:16:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":51024,"nodeType":"EmitStatement","src":"928:21:54"}]},"documentation":{"id":51004,"nodeType":"StructuredDocumentation","src":"544:231:54","text":"@dev Marks a message as signed, so that it can be used with EIP-1271\n @notice Marks a message (`_data`) as signed.\n @param _data Arbitrary length data that should be marked as signed on the behalf of address(this)"},"functionSelector":"85a5affe","implemented":true,"kind":"function","modifiers":[],"name":"signMessage","nameLocation":"789:11:54","parameters":{"id":51007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":51006,"mutability":"mutable","name":"_data","nameLocation":"816:5:54","nodeType":"VariableDeclaration","scope":51026,"src":"801:20:54","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":51005,"name":"bytes","nodeType":"ElementaryTypeName","src":"801:5:54","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"800:22:54"},"returnParameters":{"id":51008,"nodeType":"ParameterList","parameters":[],"src":"832:0:54"},"scope":51074,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":51073,"nodeType":"FunctionDefinition","src":"1114:334:54","nodes":[],"body":{"id":51072,"nodeType":"Block","src":"1190:258:54","nodes":[],"statements":[{"assignments":[51035],"declarations":[{"constant":false,"id":51035,"mutability":"mutable","name":"safeMessageHash","nameLocation":"1208:15:54","nodeType":"VariableDeclaration","scope":51072,"src":"1200:23:54","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":51034,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1200:7:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":51045,"initialValue":{"arguments":[{"arguments":[{"id":51039,"name":"SAFE_MSG_TYPEHASH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":50999,"src":"1247:17:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":51041,"name":"message","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51029,"src":"1276:7:54","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":51040,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1266:9:54","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":51042,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1266:18:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":51037,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1236:3:54","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":51038,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1240:6:54","memberName":"encode","nodeType":"MemberAccess","src":"1236:10:54","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":51043,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1236:49:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":51036,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1226:9:54","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":51044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1226:60:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1200:86:54"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"30783139","id":51051,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1349:4:54","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"0x19"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"}],"id":51050,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1342:6:54","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":51049,"name":"bytes1","nodeType":"ElementaryTypeName","src":"1342:6:54","typeDescriptions":{}}},"id":51052,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1342:12:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},{"arguments":[{"hexValue":"30783031","id":51055,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1363:4:54","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"0x01"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":51054,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1356:6:54","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":51053,"name":"bytes1","nodeType":"ElementaryTypeName","src":"1356:6:54","typeDescriptions":{}}},"id":51056,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1356:12:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[{"id":51062,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"1397:4:54","typeDescriptions":{"typeIdentifier":"t_contract$_SignMessageLib_$51074","typeString":"contract SignMessageLib"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SignMessageLib_$51074","typeString":"contract SignMessageLib"}],"id":51061,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1389:7:54","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":51060,"name":"address","nodeType":"ElementaryTypeName","src":"1389:7:54","typeDescriptions":{}}},"id":51063,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1389:13:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":51059,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1381:8:54","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":51058,"name":"address","nodeType":"ElementaryTypeName","src":"1381:8:54","stateMutability":"payable","typeDescriptions":{}}},"id":51064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1381:22:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":51057,"name":"GnosisSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":49761,"src":"1370:10:54","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_GnosisSafe_$49761_$","typeString":"type(contract GnosisSafe)"}},"id":51065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1370:34:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_GnosisSafe_$49761","typeString":"contract GnosisSafe"}},"id":51066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1405:15:54","memberName":"domainSeparator","nodeType":"MemberAccess","referencedDeclaration":49653,"src":"1370:50:54","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bytes32_$","typeString":"function () view external returns (bytes32)"}},"id":51067,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1370:52:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":51068,"name":"safeMessageHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51035,"src":"1424:15:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"},{"typeIdentifier":"t_bytes1","typeString":"bytes1"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":51047,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1325:3:54","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":51048,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1329:12:54","memberName":"encodePacked","nodeType":"MemberAccess","src":"1325:16:54","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":51069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1325:115:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":51046,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1315:9:54","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":51070,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1315:126:54","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":51033,"id":51071,"nodeType":"Return","src":"1296:145:54"}]},"documentation":{"id":51027,"nodeType":"StructuredDocumentation","src":"962:147:54","text":"@dev Returns hash of a message that can be signed by owners.\n @param message Message that should be hashed\n @return Message hash."},"functionSelector":"0a1028c4","implemented":true,"kind":"function","modifiers":[],"name":"getMessageHash","nameLocation":"1123:14:54","parameters":{"id":51030,"nodeType":"ParameterList","parameters":[{"constant":false,"id":51029,"mutability":"mutable","name":"message","nameLocation":"1151:7:54","nodeType":"VariableDeclaration","scope":51073,"src":"1138:20:54","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":51028,"name":"bytes","nodeType":"ElementaryTypeName","src":"1138:5:54","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1137:22:54"},"returnParameters":{"id":51033,"nodeType":"ParameterList","parameters":[{"constant":false,"id":51032,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":51073,"src":"1181:7:54","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":51031,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1181:7:54","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1180:9:54"},"scope":51074,"stateMutability":"view","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":50995,"name":"GnosisSafeStorage","nameLocations":["292:17:54"],"nodeType":"IdentifierPath","referencedDeclaration":50989,"src":"292:17:54"},"id":50996,"nodeType":"InheritanceSpecifier","src":"292:17:54"}],"canonicalName":"SignMessageLib","contractDependencies":[],"contractKind":"contract","documentation":{"id":50994,"nodeType":"StructuredDocumentation","src":"141:124:54","text":"@title SignMessageLib - Allows to set an entry in the signedMessages\n @author Richard Meissner - <richard@gnosis.io>"},"fullyImplemented":true,"linearizedBaseContracts":[51074,50989],"name":"SignMessageLib","nameLocation":"274:14:54","scope":51075,"usedErrors":[],"usedEvents":[51003]}],"license":"LGPL-3.0-only"},"id":54}