UNPKG

@tokamak-network/thanos-contracts

Version:
1 lines 22.8 kB
{"abi":[{"type":"function","name":"passMessageToL1","inputs":[{"name":"_message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"sentMessages","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"version","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"}],"bytecode":{"object":"0x608060405234801561001057600080fd5b5061035a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806382e3702d14610098578063cafa81dc146100cb575b600080fd5b6100826040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f919061019b565b60405180910390f35b6100bb6100a63660046101ec565b60006020819052908152604090205460ff1681565b604051901515815260200161008f565b6100de6100d9366004610234565b6100e0565b005b600160008083336040516020016100f8929190610303565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001815291815281516020928301208352908201929092520160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905550565b60005b8381101561018657818101518382015260200161016e565b83811115610195576000848401525b50505050565b60208152600082518060208401526101ba81604085016020870161016b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b6000602082840312156101fe57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561024657600080fd5b813567ffffffffffffffff8082111561025e57600080fd5b818401915084601f83011261027257600080fd5b81358181111561028457610284610205565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156102ca576102ca610205565b816040528281528760208487010111156102e357600080fd5b826020860160208301376000928101602001929092525095945050505050565b6000835161031581846020880161016b565b60609390931b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016919092019081526014019291505056fea164736f6c634300080f000a","sourceMap":"442:506:209:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806382e3702d14610098578063cafa81dc146100cb575b600080fd5b6100826040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f919061019b565b60405180910390f35b6100bb6100a63660046101ec565b60006020819052908152604090205460ff1681565b604051901515815260200161008f565b6100de6100d9366004610234565b6100e0565b005b600160008083336040516020016100f8929190610303565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001815291815281516020928301208352908201929092520160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905550565b60005b8381101561018657818101518382015260200161016e565b83811115610195576000848401525b50505050565b60208152600082518060208401526101ba81604085016020870161016b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b6000602082840312156101fe57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561024657600080fd5b813567ffffffffffffffff8082111561025e57600080fd5b818401915084601f83011261027257600080fd5b81358181111561028457610284610205565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156102ca576102ca610205565b816040528281528760208487010111156102e357600080fd5b826020860160208301376000928101602001929092525095945050505050565b6000835161031581846020880161016b565b60609390931b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016919092019081526014019291505056fea164736f6c634300080f000a","sourceMap":"442:506:209:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;668:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;554:44;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;1074:14:416;;1067:22;1049:41;;1037:2;1022:18;554:44:209;909:187:416;802:144:209;;;;;;:::i;:::-;;:::i;:::-;;;935:4;869:12;:63;909:8;919:10;892:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;882:49;;892:38;882:49;;;;869:63;;;;;;;;;;-1:-1:-1;869:63:209;:70;;;;;;;;;;;;;-1:-1:-1;802:144:209:o;14:258:416:-;86:1;96:113;110:6;107:1;104:13;96:113;;;186:11;;;180:18;167:11;;;160:39;132:2;125:10;96:113;;;227:6;224:1;221:13;218:48;;;262:1;253:6;248:3;244:16;237:27;218:48;;14:258;;;:::o;277:442::-;426:2;415:9;408:21;389:4;458:6;452:13;501:6;496:2;485:9;481:18;474:34;517:66;576:6;571:2;560:9;556:18;551:2;543:6;539:15;517:66;:::i;:::-;635:2;623:15;640:66;619:88;604:104;;;;710:2;600:113;;277:442;-1:-1:-1;;277:442:416:o;724:180::-;783:6;836:2;824:9;815:7;811:23;807:32;804:52;;;852:1;849;842:12;804:52;-1:-1:-1;875:23:416;;724:180;-1:-1:-1;724:180:416:o;1101:184::-;1153:77;1150:1;1143:88;1250:4;1247:1;1240:15;1274:4;1271:1;1264:15;1290:980;1358:6;1411:2;1399:9;1390:7;1386:23;1382:32;1379:52;;;1427:1;1424;1417:12;1379:52;1467:9;1454:23;1496:18;1537:2;1529:6;1526:14;1523:34;;;1553:1;1550;1543:12;1523:34;1591:6;1580:9;1576:22;1566:32;;1636:7;1629:4;1625:2;1621:13;1617:27;1607:55;;1658:1;1655;1648:12;1607:55;1694:2;1681:16;1716:2;1712;1709:10;1706:36;;;1722:18;;:::i;:::-;1856:2;1850:9;1918:4;1910:13;;1761:66;1906:22;;;1930:2;1902:31;1898:40;1886:53;;;1954:18;;;1974:22;;;1951:46;1948:72;;;2000:18;;:::i;:::-;2040:10;2036:2;2029:22;2075:2;2067:6;2060:18;2115:7;2110:2;2105;2101;2097:11;2093:20;2090:33;2087:53;;;2136:1;2133;2126:12;2087:53;2192:2;2187;2183;2179:11;2174:2;2166:6;2162:15;2149:46;2237:1;2215:15;;;2232:2;2211:24;2204:35;;;;-1:-1:-1;2219:6:416;1290:980;-1:-1:-1;;;;;1290:980:416:o;2275:450::-;2432:3;2470:6;2464:13;2486:53;2532:6;2527:3;2520:4;2512:6;2508:17;2486:53;:::i;:::-;2608:2;2604:15;;;;2621:66;2600:88;2561:16;;;;2586:103;;;2716:2;2705:14;;2275:450;-1:-1:-1;;2275:450:416:o","linkReferences":{}},"methodIdentifiers":{"passMessageToL1(bytes)":"cafa81dc","sentMessages(bytes32)":"82e3702d","version()":"54fd4d50"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.15+commit.e14f2714\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_message\",\"type\":\"bytes\"}],\"name\":\"passMessageToL1\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"sentMessages\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"custom:legacy\":\"@custom:proxied\",\"custom:predeploy\":\"0x4200000000000000000000000000000000000000\",\"kind\":\"dev\",\"methods\":{\"passMessageToL1(bytes)\":{\"params\":{\"_message\":\"Message to pass to L1.\"}}},\"stateVariables\":{\"version\":{\"custom:semver\":\"1.1.0\"}},\"title\":\"LegacyMessagePasser\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"passMessageToL1(bytes)\":{\"notice\":\"Passes a message to L1.\"},\"sentMessages(bytes32)\":{\"notice\":\"Mapping of sent message hashes to boolean status.\"},\"version()\":{\"notice\":\"Semantic version.\"}},\"notice\":\"The LegacyMessagePasser was the low-level mechanism used to send messages from L2 to L1 before the Bedrock upgrade. It is now deprecated in favor of the new MessagePasser.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/legacy/LegacyMessagePasser.sol\":\"LegacyMessagePasser\"},\"evmVersion\":\"london\",\"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\":{\"src/legacy/LegacyMessagePasser.sol\":{\"keccak256\":\"0xd452c7d68bb62080b5e6816199137533dfc19eb5fd483ce8a884b513d2eab803\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://02fcd6b3db93a597cbd7534a9c0cc995f7e552abbbaed03ec19f702043002e99\",\"dweb:/ipfs/QmQFxgaw7vh5uFWrWUcWBBCUWaLaiFAYXNtdBwagtx7iA1\"]},\"src/universal/ISemver.sol\":{\"keccak256\":\"0xba34562a8026f59886d2e07d1d58d90b9691d00e0788c6263cef6c22740cab44\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0826f998632f83c103c3085bf2e872db79a69022b6d2e0444c83a64ca5283c2a\",\"dweb:/ipfs/QmcJ7PNqkAfKqbjFGRordtAg1v9DvcBSKvdTkVvciLyvQR\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.15+commit.e14f2714"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes","name":"_message","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"passMessageToL1"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function","name":"sentMessages","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"version","outputs":[{"internalType":"string","name":"","type":"string"}]}],"devdoc":{"kind":"dev","methods":{"passMessageToL1(bytes)":{"params":{"_message":"Message to pass to L1."}}},"version":1},"userdoc":{"kind":"user","methods":{"passMessageToL1(bytes)":{"notice":"Passes a message to L1."},"sentMessages(bytes32)":{"notice":"Mapping of sent message hashes to boolean status."},"version()":{"notice":"Semantic version."}},"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":{"src/legacy/LegacyMessagePasser.sol":"LegacyMessagePasser"},"evmVersion":"london","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"src/legacy/LegacyMessagePasser.sol":{"keccak256":"0xd452c7d68bb62080b5e6816199137533dfc19eb5fd483ce8a884b513d2eab803","urls":["bzz-raw://02fcd6b3db93a597cbd7534a9c0cc995f7e552abbbaed03ec19f702043002e99","dweb:/ipfs/QmQFxgaw7vh5uFWrWUcWBBCUWaLaiFAYXNtdBwagtx7iA1"],"license":"MIT"},"src/universal/ISemver.sol":{"keccak256":"0xba34562a8026f59886d2e07d1d58d90b9691d00e0788c6263cef6c22740cab44","urls":["bzz-raw://0826f998632f83c103c3085bf2e872db79a69022b6d2e0444c83a64ca5283c2a","dweb:/ipfs/QmcJ7PNqkAfKqbjFGRordtAg1v9DvcBSKvdTkVvciLyvQR"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":112250,"contract":"src/legacy/LegacyMessagePasser.sol:LegacyMessagePasser","label":"sentMessages","offset":0,"slot":"0","type":"t_mapping(t_bytes32,t_bool)"}],"types":{"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_mapping(t_bytes32,t_bool)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => bool)","numberOfBytes":"32","value":"t_bool"}}},"userdoc":{"version":1,"kind":"user","methods":{"passMessageToL1(bytes)":{"notice":"Passes a message to L1."},"sentMessages(bytes32)":{"notice":"Mapping of sent message hashes to boolean status."},"version()":{"notice":"Semantic version."}},"notice":"The LegacyMessagePasser was the low-level mechanism used to send messages from L2 to L1 before the Bedrock upgrade. It is now deprecated in favor of the new MessagePasser."},"devdoc":{"version":1,"kind":"dev","methods":{"passMessageToL1(bytes)":{"params":{"_message":"Message to pass to L1."}}},"title":"LegacyMessagePasser"},"ast":{"absolutePath":"src/legacy/LegacyMessagePasser.sol","id":112276,"exportedSymbols":{"ISemver":[122319],"LegacyMessagePasser":[112275]},"nodeType":"SourceUnit","src":"32:917:209","nodes":[{"id":112240,"nodeType":"PragmaDirective","src":"32:23:209","nodes":[],"literals":["solidity","0.8",".15"]},{"id":112242,"nodeType":"ImportDirective","src":"57:52:209","nodes":[],"absolutePath":"src/universal/ISemver.sol","file":"src/universal/ISemver.sol","nameLocation":"-1:-1:-1","scope":112276,"sourceUnit":122320,"symbolAliases":[{"foreign":{"id":112241,"name":"ISemver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":122319,"src":"66:7:209","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":112275,"nodeType":"ContractDefinition","src":"442:506:209","nodes":[{"id":112250,"nodeType":"VariableDeclaration","src":"554:44:209","nodes":[],"constant":false,"documentation":{"id":112246,"nodeType":"StructuredDocumentation","src":"488:61:209","text":"@notice Mapping of sent message hashes to boolean status."},"functionSelector":"82e3702d","mutability":"mutable","name":"sentMessages","nameLocation":"586:12:209","scope":112275,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_bool_$","typeString":"mapping(bytes32 => bool)"},"typeName":{"id":112249,"keyType":{"id":112247,"name":"bytes32","nodeType":"ElementaryTypeName","src":"562:7:209","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Mapping","src":"554:24:209","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_bool_$","typeString":"mapping(bytes32 => bool)"},"valueType":{"id":112248,"name":"bool","nodeType":"ElementaryTypeName","src":"573:4:209","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"public"},{"id":112254,"nodeType":"VariableDeclaration","src":"668:40:209","nodes":[],"baseFunctions":[122318],"constant":true,"documentation":{"id":112251,"nodeType":"StructuredDocumentation","src":"605:58:209","text":"@notice Semantic version.\n @custom:semver 1.1.0"},"functionSelector":"54fd4d50","mutability":"constant","name":"version","nameLocation":"691:7:209","scope":112275,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":112252,"name":"string","nodeType":"ElementaryTypeName","src":"668:6:209","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"312e312e30","id":112253,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"701:7:209","typeDescriptions":{"typeIdentifier":"t_stringliteral_6815ba53416ba06aff1932cc76b3832272bafab9bc8e066be382e32b06ba5546","typeString":"literal_string \"1.1.0\""},"value":"1.1.0"},"visibility":"public"},{"id":112274,"nodeType":"FunctionDefinition","src":"802:144:209","nodes":[],"body":{"id":112273,"nodeType":"Block","src":"859:87:209","nodes":[],"statements":[{"expression":{"id":112271,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":112260,"name":"sentMessages","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":112250,"src":"869:12:209","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_bool_$","typeString":"mapping(bytes32 => bool)"}},"id":112269,"indexExpression":{"arguments":[{"arguments":[{"id":112264,"name":"_message","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":112257,"src":"909:8:209","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":112265,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"919:3:209","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":112266,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"919:10:209","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":112262,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"892:3:209","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":112263,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"892:16:209","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":112267,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"892:38:209","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":112261,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"882:9:209","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":112268,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"882:49:209","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"869:63:209","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":112270,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"935:4:209","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"869:70:209","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":112272,"nodeType":"ExpressionStatement","src":"869:70:209"}]},"documentation":{"id":112255,"nodeType":"StructuredDocumentation","src":"715:82:209","text":"@notice Passes a message to L1.\n @param _message Message to pass to L1."},"functionSelector":"cafa81dc","implemented":true,"kind":"function","modifiers":[],"name":"passMessageToL1","nameLocation":"811:15:209","parameters":{"id":112258,"nodeType":"ParameterList","parameters":[{"constant":false,"id":112257,"mutability":"mutable","name":"_message","nameLocation":"840:8:209","nodeType":"VariableDeclaration","scope":112274,"src":"827:21:209","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":112256,"name":"bytes","nodeType":"ElementaryTypeName","src":"827:5:209","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"826:23:209"},"returnParameters":{"id":112259,"nodeType":"ParameterList","parameters":[],"src":"859:0:209"},"scope":112275,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":112244,"name":"ISemver","nodeType":"IdentifierPath","referencedDeclaration":122319,"src":"474:7:209"},"id":112245,"nodeType":"InheritanceSpecifier","src":"474:7:209"}],"canonicalName":"LegacyMessagePasser","contractDependencies":[],"contractKind":"contract","documentation":{"id":112243,"nodeType":"StructuredDocumentation","src":"111:331:209","text":"@custom:legacy\n @custom:proxied\n @custom:predeploy 0x4200000000000000000000000000000000000000\n @title LegacyMessagePasser\n @notice The LegacyMessagePasser was the low-level mechanism used to send messages from L2 to L1\n before the Bedrock upgrade. It is now deprecated in favor of the new MessagePasser."},"fullyImplemented":true,"linearizedBaseContracts":[112275,122319],"name":"LegacyMessagePasser","nameLocation":"451:19:209","scope":112276,"usedErrors":[]}],"license":"MIT"},"id":209}