@tokamak-network/thanos-contracts
Version:
1 lines • 17.7 kB
JSON
{"abi":[{"type":"fallback","stateMutability":"payable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.6.12+commit.27d51765\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"stateMutability\":\"payable\",\"type\":\"fallback\"}],\"devdoc\":{\"details\":\"Forked from https://github.com/zeppelinos/zos-lib/blob/8a16ef3ad17ec7430e3a9d2b5e3f39b8204f8c8d/contracts/upgradeability/Proxy.sol Modifications: 1. Reformat and conform to Solidity 0.6 syntax (5/13/20)\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Implements delegation of calls to other contracts, with proper forwarding of return values and bubbling of failures. It defines a fallback function that delegates all calls to the address returned by the abstract _implementation() internal function.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/tokamak-contracts/USDC/L2/tokamak-USDC/upgradeability/Proxy.sol\":\"Proxy\"},\"evmVersion\":\"istanbul\",\"libraries\":{\"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/tokamak-contracts/USDC/L2/tokamak-USDC/upgradeability/Proxy.sol\":{\"keccak256\":\"0x37af1ffcf715a356ba5115034090f2f572cf0a288b9c5819b84d8d8c53c370a0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://11fcecbf96b447e63967857ec24128f3b8d9dd9f6edaaeb12c97df1136fce0b1\",\"dweb:/ipfs/QmUZZ7Cy5Z89V1PrJVc6Hj34sMK15wGn58ny5heZ3qFNzS\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.6.12+commit.27d51765"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"payable","type":"fallback"}],"devdoc":{"kind":"dev","methods":{},"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":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/upgradeability/Proxy.sol":"Proxy"},"evmVersion":"istanbul","libraries":{"SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/upgradeability/Proxy.sol":{"keccak256":"0x37af1ffcf715a356ba5115034090f2f572cf0a288b9c5819b84d8d8c53c370a0","urls":["bzz-raw://11fcecbf96b447e63967857ec24128f3b8d9dd9f6edaaeb12c97df1136fce0b1","dweb:/ipfs/QmUZZ7Cy5Z89V1PrJVc6Hj34sMK15wGn58ny5heZ3qFNzS"],"license":"Apache-2.0"}},"version":1},"storageLayout":{"storage":[],"types":{}},"userdoc":{"version":1,"kind":"user","notice":"Implements delegation of calls to other contracts, with proper forwarding of return values and bubbling of failures. It defines a fallback function that delegates all calls to the address returned by the abstract _implementation() internal function."},"devdoc":{"version":1,"kind":"dev","details":"Forked from https://github.com/zeppelinos/zos-lib/blob/8a16ef3ad17ec7430e3a9d2b5e3f39b8204f8c8d/contracts/upgradeability/Proxy.sol Modifications: 1. Reformat and conform to Solidity 0.6 syntax (5/13/20)"},"ast":{"absolutePath":"src/tokamak-contracts/USDC/L2/tokamak-USDC/upgradeability/Proxy.sol","id":1500,"exportedSymbols":{"Proxy":[1499]},"nodeType":"SourceUnit","src":"659:2444:11","nodes":[{"id":1457,"nodeType":"PragmaDirective","src":"659:23:11","nodes":[],"literals":["solidity","0.6",".12"]},{"id":1499,"nodeType":"ContractDefinition","src":"1182:1920:11","nodes":[{"id":1466,"nodeType":"FunctionDefinition","src":"1303:56:11","nodes":[],"body":{"id":1465,"nodeType":"Block","src":"1331:28:11","nodes":[],"statements":[{"expression":{"argumentTypes":null,"arguments":[],"expression":{"argumentTypes":[],"id":1462,"name":"_fallback","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1498,"src":"1341:9:11","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":1463,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1341:11:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1464,"nodeType":"ExpressionStatement","src":"1341:11:11"}]},"documentation":{"id":1459,"nodeType":"StructuredDocumentation","src":"1212:86:11","text":" @dev Fallback function.\n Implemented entirely in `_fallback`."},"implemented":true,"kind":"fallback","modifiers":[],"name":"","overrides":null,"parameters":{"id":1460,"nodeType":"ParameterList","parameters":[],"src":"1311:2:11"},"returnParameters":{"id":1461,"nodeType":"ParameterList","parameters":[],"src":"1331:0:11"},"scope":1499,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":1472,"nodeType":"FunctionDefinition","src":"1431:67:11","nodes":[],"documentation":{"id":1467,"nodeType":"StructuredDocumentation","src":"1365:61:11","text":" @return The Address of the implementation."},"implemented":false,"kind":"function","modifiers":[],"name":"_implementation","overrides":null,"parameters":{"id":1468,"nodeType":"ParameterList","parameters":[],"src":"1455:2:11"},"returnParameters":{"id":1471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1470,"mutability":"mutable","name":"","nodeType":"VariableDeclaration","overrides":null,"scope":1472,"src":"1489:7:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1469,"name":"address","nodeType":"ElementaryTypeName","src":"1489:7:11","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1488:9:11"},"scope":1499,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":1480,"nodeType":"FunctionDefinition","src":"1798:831:11","nodes":[],"body":{"id":1479,"nodeType":"Block","src":"1850:779:11","nodes":[],"statements":[{"AST":{"nodeType":"YulBlock","src":"1869:754:11","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2122:1:11","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2125:1:11","type":"","value":"0"},{"arguments":[],"functionName":{"name":"calldatasize","nodeType":"YulIdentifier","src":"2128:12:11"},"nodeType":"YulFunctionCall","src":"2128:14:11"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"2109:12:11"},"nodeType":"YulFunctionCall","src":"2109:34:11"},"nodeType":"YulExpressionStatement","src":"2109:34:11"},{"nodeType":"YulVariableDeclaration","src":"2270:74:11","value":{"arguments":[{"arguments":[],"functionName":{"name":"gas","nodeType":"YulIdentifier","src":"2297:3:11"},"nodeType":"YulFunctionCall","src":"2297:5:11"},{"name":"implementation","nodeType":"YulIdentifier","src":"2304:14:11"},{"kind":"number","nodeType":"YulLiteral","src":"2320:1:11","type":"","value":"0"},{"arguments":[],"functionName":{"name":"calldatasize","nodeType":"YulIdentifier","src":"2323:12:11"},"nodeType":"YulFunctionCall","src":"2323:14:11"},{"kind":"number","nodeType":"YulLiteral","src":"2339:1:11","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2342:1:11","type":"","value":"0"}],"functionName":{"name":"delegatecall","nodeType":"YulIdentifier","src":"2284:12:11"},"nodeType":"YulFunctionCall","src":"2284:60:11"},"variables":[{"name":"result","nodeType":"YulTypedName","src":"2274:6:11","type":""}]},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2412:1:11","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2415:1:11","type":"","value":"0"},{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"2418:14:11"},"nodeType":"YulFunctionCall","src":"2418:16:11"}],"functionName":{"name":"returndatacopy","nodeType":"YulIdentifier","src":"2397:14:11"},"nodeType":"YulFunctionCall","src":"2397:38:11"},"nodeType":"YulExpressionStatement","src":"2397:38:11"},{"cases":[{"body":{"nodeType":"YulBlock","src":"2530:31:11","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2539:1:11","type":"","value":"0"},{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"2542:14:11"},"nodeType":"YulFunctionCall","src":"2542:16:11"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"2532:6:11"},"nodeType":"YulFunctionCall","src":"2532:27:11"},"nodeType":"YulExpressionStatement","src":"2532:27:11"}]},"nodeType":"YulCase","src":"2523:38:11","value":{"kind":"number","nodeType":"YulLiteral","src":"2528:1:11","type":"","value":"0"}},{"body":{"nodeType":"YulBlock","src":"2582:31:11","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2591:1:11","type":"","value":"0"},{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"2594:14:11"},"nodeType":"YulFunctionCall","src":"2594:16:11"}],"functionName":{"name":"return","nodeType":"YulIdentifier","src":"2584:6:11"},"nodeType":"YulFunctionCall","src":"2584:27:11"},"nodeType":"YulExpressionStatement","src":"2584:27:11"}]},"nodeType":"YulCase","src":"2574:39:11","value":"default"}],"expression":{"name":"result","nodeType":"YulIdentifier","src":"2456:6:11"},"nodeType":"YulSwitch","src":"2449:164:11"}]},"evmVersion":"istanbul","externalReferences":[{"declaration":1475,"isOffset":false,"isSlot":false,"src":"2304:14:11","valueSize":1}],"id":1478,"nodeType":"InlineAssembly","src":"1860:763:11"}]},"documentation":{"id":1473,"nodeType":"StructuredDocumentation","src":"1504:289:11","text":" @dev Delegates execution to an implementation contract.\n This is a low level function that doesn't return to its internal call site.\n It will return to the external caller whatever the implementation returns.\n @param implementation Address to delegate."},"implemented":true,"kind":"function","modifiers":[],"name":"_delegate","overrides":null,"parameters":{"id":1476,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1475,"mutability":"mutable","name":"implementation","nodeType":"VariableDeclaration","overrides":null,"scope":1480,"src":"1817:22:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1474,"name":"address","nodeType":"ElementaryTypeName","src":"1817:7:11","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1816:24:11"},"returnParameters":{"id":1477,"nodeType":"ParameterList","parameters":[],"src":"1850:0:11"},"scope":1499,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1485,"nodeType":"FunctionDefinition","src":"2850:45:11","nodes":[],"body":{"id":1484,"nodeType":"Block","src":"2892:3:11","nodes":[],"statements":[]},"documentation":{"id":1481,"nodeType":"StructuredDocumentation","src":"2635:210:11","text":" @dev Function that is run as the first thing in the fallback function.\n Can be redefined in derived contracts to add functionality.\n Redefinitions must call super._willFallback()."},"implemented":true,"kind":"function","modifiers":[],"name":"_willFallback","overrides":null,"parameters":{"id":1482,"nodeType":"ParameterList","parameters":[],"src":"2872:2:11"},"returnParameters":{"id":1483,"nodeType":"ParameterList","parameters":[],"src":"2892:0:11"},"scope":1499,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":1498,"nodeType":"FunctionDefinition","src":"3000:100:11","nodes":[],"body":{"id":1497,"nodeType":"Block","src":"3030:70:11","nodes":[],"statements":[{"expression":{"argumentTypes":null,"arguments":[],"expression":{"argumentTypes":[],"id":1489,"name":"_willFallback","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1485,"src":"3040:13:11","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":1490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3040:15:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1491,"nodeType":"ExpressionStatement","src":"3040:15:11"},{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[],"expression":{"argumentTypes":[],"id":1493,"name":"_implementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1472,"src":"3075:15:11","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":1494,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3075:17:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1492,"name":"_delegate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1480,"src":"3065:9:11","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":1495,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3065:28:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1496,"nodeType":"ExpressionStatement","src":"3065:28:11"}]},"documentation":{"id":1486,"nodeType":"StructuredDocumentation","src":"2901:94:11","text":" @dev fallback implementation.\n Extracted to enable manual triggering."},"implemented":true,"kind":"function","modifiers":[],"name":"_fallback","overrides":null,"parameters":{"id":1487,"nodeType":"ParameterList","parameters":[],"src":"3018:2:11"},"returnParameters":{"id":1488,"nodeType":"ParameterList","parameters":[],"src":"3030:0:11"},"scope":1499,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"abstract":true,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":{"id":1458,"nodeType":"StructuredDocumentation","src":"684:497:11","text":" @notice Implements delegation of calls to other contracts, with proper\n forwarding of return values and bubbling of failures.\n It defines a fallback function that delegates all calls to the address\n returned by the abstract _implementation() internal function.\n @dev Forked from\n https://github.com/zeppelinos/zos-lib/blob/8a16ef3ad17ec7430e3a9d2b5e3f39b8204f8c8d/contracts/upgradeability/Proxy.sol\n Modifications:\n 1. Reformat and conform to Solidity 0.6 syntax (5/13/20)"},"fullyImplemented":false,"linearizedBaseContracts":[1499],"name":"Proxy","scope":1500}],"license":"Apache-2.0"},"id":11}