{"abi":[{"type":"constructor","inputs":[{"name":"_singleton","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"fallback","stateMutability":"payable"}],"bytecode":{"object":"0x608060405234801561001057600080fd5b5060405161016f38038061016f83398101604081905261002f916100b9565b6001600160a01b0381166100945760405162461bcd60e51b815260206004820152602260248201527f496e76616c69642073696e676c65746f6e20616464726573732070726f766964604482015261195960f21b606482015260840160405180910390fd5b600080546001600160a01b0319166001600160a01b03929092169190911790556100e9565b6000602082840312156100cb57600080fd5b81516001600160a01b03811681146100e257600080fd5b9392505050565b6078806100f76000396000f3fe6080604052600073ffffffffffffffffffffffffffffffffffffffff8154167fa619486e00000000000000000000000000000000000000000000000000000000823503604d57808252602082f35b3682833781823684845af490503d82833e806066573d82fd5b503d81f3fea164736f6c634300080f000a","sourceMap":"512:1497:99:-:0;;;946:152;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;996:24:99;;988:71;;;;-1:-1:-1;;;988:71:99;;511:2:416;988:71:99;;;493:21:416;550:2;530:18;;;523:30;589:34;569:18;;;562:62;-1:-1:-1;;;640:18:416;;;633:32;682:19;;988:71:99;;;;;;;;1069:9;:22;;-1:-1:-1;;;;;;1069:22:99;-1:-1:-1;;;;;1069:22:99;;;;;;;;;;512:1497;;14:290:416;84:6;137:2;125:9;116:7;112:23;108:32;105:52;;;153:1;150;143:12;105:52;179:16;;-1:-1:-1;;;;;224:31:416;;214:42;;204:70;;270:1;267;260:12;204:70;293:5;14:290;-1:-1:-1;;;14:290:416:o;309:398::-;512:1497:99;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600073ffffffffffffffffffffffffffffffffffffffff8154167fa619486e00000000000000000000000000000000000000000000000000000000823503604d57808252602082f35b3682833781823684845af490503d82833e806066573d82fd5b503d81f3fea164736f6c634300080f000a","sourceMap":"512:1497:99:-:0;;;1344:1;1348:42;1344:1;1338:8;1334:57;1526:66;1344:1;1509:15;1506:87;1503:176;;1622:10;1344:1;1612:21;1660:4;1344:1;1650:15;1503:176;1711:14;1344:1;;1692:34;1344:1;;1711:14;1344:1;1774:10;1767:5;1754:56;1739:71;;1844:16;1344:1;;1823:38;1880:7;1874:77;;1920:16;1344:1;1910:27;1874:77;;1974:16;1344:1;1964:27","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.15+commit.e14f2714\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_singleton\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"}],\"devdoc\":{\"author\":\"Stefan George - <stefan@gnosis.io>Richard Meissner - <richard@gnosis.io>\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Constructor function sets address of singleton contract.\",\"params\":{\"_singleton\":\"Singleton address.\"}}},\"title\":\"GnosisSafeProxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/safe-contracts/contracts/proxies/GnosisSafeProxy.sol\":\"GnosisSafeProxy\"},\"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\":{\"lib/safe-contracts/contracts/proxies/GnosisSafeProxy.sol\":{\"keccak256\":\"0x3bfdd453d9f896f7029d15bcafd11886957b320ad1764309d9f74fa059715249\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://5b5b7d0c8a900ba758e012236bf1c55e885fe5716aa79f6f693d22c31c85f7d5\",\"dweb:/ipfs/QmUq5oNsZY1b5pcYAzrY1i9oqyPUaiFhLaEWgB9ML6LrBj\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.15+commit.e14f2714"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_singleton","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"stateMutability":"payable","type":"fallback"}],"devdoc":{"kind":"dev","methods":{"constructor":{"details":"Constructor function sets address of singleton contract.","params":{"_singleton":"Singleton address."}}},"version":1},"userdoc":{"kind":"user","methods":{},"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/proxies/GnosisSafeProxy.sol":"GnosisSafeProxy"},"evmVersion":"london","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"lib/safe-contracts/contracts/proxies/GnosisSafeProxy.sol":{"keccak256":"0x3bfdd453d9f896f7029d15bcafd11886957b320ad1764309d9f74fa059715249","urls":["bzz-raw://5b5b7d0c8a900ba758e012236bf1c55e885fe5716aa79f6f693d22c31c85f7d5","dweb:/ipfs/QmUq5oNsZY1b5pcYAzrY1i9oqyPUaiFhLaEWgB9ML6LrBj"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":60605,"contract":"lib/safe-contracts/contracts/proxies/GnosisSafeProxy.sol:GnosisSafeProxy","label":"singleton","offset":0,"slot":"0","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"}}},"userdoc":{"version":1,"kind":"user"},"devdoc":{"version":1,"kind":"dev","author":"Stefan George - <stefan@gnosis.io>Richard Meissner - <richard@gnosis.io>","methods":{"constructor":{"details":"Constructor function sets address of singleton contract.","params":{"_singleton":"Singleton address."}}},"title":"GnosisSafeProxy - Generic proxy contract allows to execute all transactions applying the code of a master contract."},"ast":{"absolutePath":"lib/safe-contracts/contracts/proxies/GnosisSafeProxy.sol","id":60634,"exportedSymbols":{"GnosisSafeProxy":[60633],"IProxy":[60602]},"nodeType":"SourceUnit","src":"42:1968:99","nodes":[{"id":60595,"nodeType":"PragmaDirective","src":"42:31:99","nodes":[],"literals":["solidity",">=","0.7",".0","<","0.9",".0"]},{"id":60602,"nodeType":"ContractDefinition","src":"206:79:99","nodes":[{"id":60601,"nodeType":"FunctionDefinition","src":"229:54:99","nodes":[],"functionSelector":"a619486e","implemented":false,"kind":"function","modifiers":[],"name":"masterCopy","nameLocation":"238:10:99","parameters":{"id":60597,"nodeType":"ParameterList","parameters":[],"src":"248:2:99"},"returnParameters":{"id":60600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60599,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":60601,"src":"274:7:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":60598,"name":"address","nodeType":"ElementaryTypeName","src":"274:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"273:9:99"},"scope":60602,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IProxy","contractDependencies":[],"contractKind":"interface","documentation":{"id":60596,"nodeType":"StructuredDocumentation","src":"75:131:99","text":"@title IProxy - Helper interface to access masterCopy of the Proxy on-chain\n @author Richard Meissner - <richard@gnosis.io>"},"fullyImplemented":false,"linearizedBaseContracts":[60602],"name":"IProxy","nameLocation":"216:6:99","scope":60634,"usedErrors":[]},{"id":60633,"nodeType":"ContractDefinition","src":"512:1497:99","nodes":[{"id":60605,"nodeType":"VariableDeclaration","src":"798:26:99","nodes":[],"constant":false,"mutability":"mutable","name":"singleton","nameLocation":"815:9:99","scope":60633,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":60604,"name":"address","nodeType":"ElementaryTypeName","src":"798:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":60626,"nodeType":"FunctionDefinition","src":"946:152:99","nodes":[],"body":{"id":60625,"nodeType":"Block","src":"978:120:99","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":60617,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60612,"name":"_singleton","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60608,"src":"996:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":60615,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1018:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":60614,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1010:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":60613,"name":"address","nodeType":"ElementaryTypeName","src":"1010:7:99","typeDescriptions":{}}},"id":60616,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1010:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"996:24:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"496e76616c69642073696e676c65746f6e20616464726573732070726f7669646564","id":60618,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1022:36:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_f4a46125d24bcf992f3a005546c0f3eafebe1847b2ccd7a103878ded65e88250","typeString":"literal_string \"Invalid singleton address provided\""},"value":"Invalid singleton address provided"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f4a46125d24bcf992f3a005546c0f3eafebe1847b2ccd7a103878ded65e88250","typeString":"literal_string \"Invalid singleton address provided\""}],"id":60611,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"988:7:99","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":60619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"988:71:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60620,"nodeType":"ExpressionStatement","src":"988:71:99"},{"expression":{"id":60623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":60621,"name":"singleton","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60605,"src":"1069:9:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":60622,"name":"_singleton","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60608,"src":"1081:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1069:22:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":60624,"nodeType":"ExpressionStatement","src":"1069:22:99"}]},"documentation":{"id":60606,"nodeType":"StructuredDocumentation","src":"831:110:99","text":"@dev Constructor function sets address of singleton contract.\n @param _singleton Singleton address."},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":60609,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60608,"mutability":"mutable","name":"_singleton","nameLocation":"966:10:99","nodeType":"VariableDeclaration","scope":60626,"src":"958:18:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":60607,"name":"address","nodeType":"ElementaryTypeName","src":"958:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"957:20:99"},"returnParameters":{"id":60610,"nodeType":"ParameterList","parameters":[],"src":"978:0:99"},"scope":60633,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":60632,"nodeType":"FunctionDefinition","src":"1199:808:99","nodes":[],"body":{"id":60631,"nodeType":"Block","src":"1227:780:99","nodes":[],"statements":[{"AST":{"nodeType":"YulBlock","src":"1302:699:99","statements":[{"nodeType":"YulVariableDeclaration","src":"1316:75:99","value":{"arguments":[{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1344:1:99","type":"","value":"0"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"1338:5:99"},"nodeType":"YulFunctionCall","src":"1338:8:99"},{"kind":"number","nodeType":"YulLiteral","src":"1348:42:99","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"1334:3:99"},"nodeType":"YulFunctionCall","src":"1334:57:99"},"variables":[{"name":"_singleton","nodeType":"YulTypedName","src":"1320:10:99","type":""}]},{"body":{"nodeType":"YulBlock","src":"1594:85:99","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1619:1:99","type":"","value":"0"},{"name":"_singleton","nodeType":"YulIdentifier","src":"1622:10:99"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1612:6:99"},"nodeType":"YulFunctionCall","src":"1612:21:99"},"nodeType":"YulExpressionStatement","src":"1612:21:99"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1657:1:99","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1660:4:99","type":"","value":"0x20"}],"functionName":{"name":"return","nodeType":"YulIdentifier","src":"1650:6:99"},"nodeType":"YulFunctionCall","src":"1650:15:99"},"nodeType":"YulExpressionStatement","src":"1650:15:99"}]},"condition":{"arguments":[{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1522:1:99","type":"","value":"0"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1509:12:99"},"nodeType":"YulFunctionCall","src":"1509:15:99"},{"kind":"number","nodeType":"YulLiteral","src":"1526:66:99","type":"","value":"0xa619486e00000000000000000000000000000000000000000000000000000000"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"1506:2:99"},"nodeType":"YulFunctionCall","src":"1506:87:99"},"nodeType":"YulIf","src":"1503:176:99"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1705:1:99","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1708:1:99","type":"","value":"0"},{"arguments":[],"functionName":{"name":"calldatasize","nodeType":"YulIdentifier","src":"1711:12:99"},"nodeType":"YulFunctionCall","src":"1711:14:99"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"1692:12:99"},"nodeType":"YulFunctionCall","src":"1692:34:99"},"nodeType":"YulExpressionStatement","src":"1692:34:99"},{"nodeType":"YulVariableDeclaration","src":"1739:71:99","value":{"arguments":[{"arguments":[],"functionName":{"name":"gas","nodeType":"YulIdentifier","src":"1767:3:99"},"nodeType":"YulFunctionCall","src":"1767:5:99"},{"name":"_singleton","nodeType":"YulIdentifier","src":"1774:10:99"},{"kind":"number","nodeType":"YulLiteral","src":"1786:1:99","type":"","value":"0"},{"arguments":[],"functionName":{"name":"calldatasize","nodeType":"YulIdentifier","src":"1789:12:99"},"nodeType":"YulFunctionCall","src":"1789:14:99"},{"kind":"number","nodeType":"YulLiteral","src":"1805:1:99","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1808:1:99","type":"","value":"0"}],"functionName":{"name":"delegatecall","nodeType":"YulIdentifier","src":"1754:12:99"},"nodeType":"YulFunctionCall","src":"1754:56:99"},"variables":[{"name":"success","nodeType":"YulTypedName","src":"1743:7:99","type":""}]},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1838:1:99","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1841:1:99","type":"","value":"0"},{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"1844:14:99"},"nodeType":"YulFunctionCall","src":"1844:16:99"}],"functionName":{"name":"returndatacopy","nodeType":"YulIdentifier","src":"1823:14:99"},"nodeType":"YulFunctionCall","src":"1823:38:99"},"nodeType":"YulExpressionStatement","src":"1823:38:99"},{"body":{"nodeType":"YulBlock","src":"1892:59:99","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1917:1:99","type":"","value":"0"},{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"1920:14:99"},"nodeType":"YulFunctionCall","src":"1920:16:99"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1910:6:99"},"nodeType":"YulFunctionCall","src":"1910:27:99"},"nodeType":"YulExpressionStatement","src":"1910:27:99"}]},"condition":{"arguments":[{"name":"success","nodeType":"YulIdentifier","src":"1880:7:99"},{"kind":"number","nodeType":"YulLiteral","src":"1889:1:99","type":"","value":"0"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"1877:2:99"},"nodeType":"YulFunctionCall","src":"1877:14:99"},"nodeType":"YulIf","src":"1874:77:99"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1971:1:99","type":"","value":"0"},{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"1974:14:99"},"nodeType":"YulFunctionCall","src":"1974:16:99"}],"functionName":{"name":"return","nodeType":"YulIdentifier","src":"1964:6:99"},"nodeType":"YulFunctionCall","src":"1964:27:99"},"nodeType":"YulExpressionStatement","src":"1964:27:99"}]},"evmVersion":"london","externalReferences":[],"id":60630,"nodeType":"InlineAssembly","src":"1293:708:99"}]},"documentation":{"id":60627,"nodeType":"StructuredDocumentation","src":"1104:90:99","text":"@dev Fallback function forwards all transactions and returns all received return data."},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":60628,"nodeType":"ParameterList","parameters":[],"src":"1207:2:99"},"returnParameters":{"id":60629,"nodeType":"ParameterList","parameters":[],"src":"1227:0:99"},"scope":60633,"stateMutability":"payable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"GnosisSafeProxy","contractDependencies":[],"contractKind":"contract","documentation":{"id":60603,"nodeType":"StructuredDocumentation","src":"287:225:99","text":"@title GnosisSafeProxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.\n @author Stefan George - <stefan@gnosis.io>\n @author Richard Meissner - <richard@gnosis.io>"},"fullyImplemented":true,"linearizedBaseContracts":[60633],"name":"GnosisSafeProxy","nameLocation":"521:15:99","scope":60634,"usedErrors":[]}],"license":"LGPL-3.0-only"},"id":99}