@tokamak-network/thanos-contracts
Version:
1 lines • 21 kB
JSON
{"abi":[],"bytecode":{"object":"0x602d6023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c634300060c000a","sourceMap":"768:1265:14:-:0;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c634300060c000a","sourceMap":"768:1265:14:-:0;;;;;;;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.6.12+commit.27d51765\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"EIP712\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"A library that provides EIP712 helper functions\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/tokamak-contracts/USDC/L2/tokamak-USDC/util/EIP712.sol\":\"EIP712\"},\"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/util/EIP712.sol\":{\"keccak256\":\"0x7bc4bfee8042bbadeb6606670e857531c5524c78d95dac619a0019f4826abfaf\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1d25da9a02e2def23b4606c6625d26810f7132ff3c8312d3dfd4319a76cd9497\",\"dweb:/ipfs/QmTgRwtosFh7nbiuxax382i5YDY4kc6A3GHL8kY5oHDgNX\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.6.12+commit.27d51765"},"language":"Solidity","output":{"abi":[],"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/util/EIP712.sol":"EIP712"},"evmVersion":"istanbul","libraries":{"SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/util/EIP712.sol":{"keccak256":"0x7bc4bfee8042bbadeb6606670e857531c5524c78d95dac619a0019f4826abfaf","urls":["bzz-raw://1d25da9a02e2def23b4606c6625d26810f7132ff3c8312d3dfd4319a76cd9497","dweb:/ipfs/QmTgRwtosFh7nbiuxax382i5YDY4kc6A3GHL8kY5oHDgNX"],"license":"Apache-2.0"}},"version":1},"storageLayout":{"storage":[],"types":{}},"userdoc":{"version":1,"kind":"user","notice":"A library that provides EIP712 helper functions"},"devdoc":{"version":1,"kind":"dev","title":"EIP712"},"ast":{"absolutePath":"src/tokamak-contracts/USDC/L2/tokamak-USDC/util/EIP712.sol","id":1749,"exportedSymbols":{"EIP712":[1748]},"nodeType":"SourceUnit","src":"659:1375:14","nodes":[{"id":1688,"nodeType":"PragmaDirective","src":"659:23:14","nodes":[],"literals":["solidity","0.6",".12"]},{"id":1748,"nodeType":"ContractDefinition","src":"768:1265:14","nodes":[{"id":1726,"nodeType":"FunctionDefinition","src":"998:598:14","nodes":[],"body":{"id":1725,"nodeType":"Block","src":"1177:419:14","nodes":[],"statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"hexValue":"307838623733633363363962623866653364353132656363346366373539636337393233396637623137396230666661636161396137356435323262333934303066","id":1704,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1360:66:14","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_63076024560530113402979550242307453568063438748328787417531900361828837441551_by_1","typeString":"int_const 6307...(69 digits omitted)...1551"},"value":"0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f"},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":1708,"name":"name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1692,"src":"1460:4:14","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":1707,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1454:5:14","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":1706,"name":"bytes","nodeType":"ElementaryTypeName","src":"1454:5:14","typeDescriptions":{"typeIdentifier":null,"typeString":null}}},"id":1709,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1454:11:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":1705,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1444:9:14","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":1710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1444:22:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":1714,"name":"version","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1694,"src":"1500:7:14","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":1713,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1494:5:14","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":1712,"name":"bytes","nodeType":"ElementaryTypeName","src":"1494:5:14","typeDescriptions":{"typeIdentifier":null,"typeString":null}}},"id":1715,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1494:14:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":1711,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1484:9:14","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":1716,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1484:25:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":1717,"name":"chainId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1696,"src":"1527:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":1720,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"1560:4:14","typeDescriptions":{"typeIdentifier":"t_contract$_EIP712_$1748","typeString":"library EIP712"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_EIP712_$1748","typeString":"library EIP712"}],"id":1719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1552:7:14","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1718,"name":"address","nodeType":"ElementaryTypeName","src":"1552:7:14","typeDescriptions":{"typeIdentifier":null,"typeString":null}}},"id":1721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1552:13:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_63076024560530113402979550242307453568063438748328787417531900361828837441551_by_1","typeString":"int_const 6307...(69 digits omitted)...1551"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":null,"id":1702,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1217:3:14","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":1703,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encode","nodeType":"MemberAccess","referencedDeclaration":null,"src":"1217:10:14","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":1722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1217:362:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":1701,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1194:9:14","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":1723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1194:395:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":1700,"id":1724,"nodeType":"Return","src":"1187:402:14"}]},"documentation":{"id":1690,"nodeType":"StructuredDocumentation","src":"789:204:14","text":" @notice Make EIP712 domain separator\n @param name Contract name\n @param version Contract version\n @param chainId Blockchain ID\n @return Domain separator"},"implemented":true,"kind":"function","modifiers":[],"name":"makeDomainSeparator","overrides":null,"parameters":{"id":1697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1692,"mutability":"mutable","name":"name","nodeType":"VariableDeclaration","overrides":null,"scope":1726,"src":"1036:18:14","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1691,"name":"string","nodeType":"ElementaryTypeName","src":"1036:6:14","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"},{"constant":false,"id":1694,"mutability":"mutable","name":"version","nodeType":"VariableDeclaration","overrides":null,"scope":1726,"src":"1064:21:14","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1693,"name":"string","nodeType":"ElementaryTypeName","src":"1064:6:14","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"},{"constant":false,"id":1696,"mutability":"mutable","name":"chainId","nodeType":"VariableDeclaration","overrides":null,"scope":1726,"src":"1095:15:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1695,"name":"uint256","nodeType":"ElementaryTypeName","src":"1095:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"src":"1026:90:14"},"returnParameters":{"id":1700,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1699,"mutability":"mutable","name":"","nodeType":"VariableDeclaration","overrides":null,"scope":1726,"src":"1164:7:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1698,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1164:7:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1163:9:14"},"scope":1748,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":1747,"nodeType":"FunctionDefinition","src":"1773:258:14","nodes":[],"body":{"id":1746,"nodeType":"Block","src":"1877:154:14","nodes":[],"statements":[{"assignments":[1737],"declarations":[{"constant":false,"id":1737,"mutability":"mutable","name":"chainId","nodeType":"VariableDeclaration","overrides":null,"scope":1746,"src":"1887:15:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1736,"name":"uint256","nodeType":"ElementaryTypeName","src":"1887:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"id":1738,"initialValue":null,"nodeType":"VariableDeclarationStatement","src":"1887:15:14"},{"AST":{"nodeType":"YulBlock","src":"1921:44:14","statements":[{"nodeType":"YulAssignment","src":"1935:20:14","value":{"arguments":[],"functionName":{"name":"chainid","nodeType":"YulIdentifier","src":"1946:7:14"},"nodeType":"YulFunctionCall","src":"1946:9:14"},"variableNames":[{"name":"chainId","nodeType":"YulIdentifier","src":"1935:7:14"}]}]},"evmVersion":"istanbul","externalReferences":[{"declaration":1737,"isOffset":false,"isSlot":false,"src":"1935:7:14","valueSize":1}],"id":1739,"nodeType":"InlineAssembly","src":"1912:53:14"},{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":1741,"name":"name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1729,"src":"2001:4:14","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"argumentTypes":null,"id":1742,"name":"version","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1731,"src":"2007:7:14","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"argumentTypes":null,"id":1743,"name":"chainId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1737,"src":"2016:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1740,"name":"makeDomainSeparator","nodeType":"Identifier","overloadedDeclarations":[1726,1747],"referencedDeclaration":1726,"src":"1981:19:14","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_uint256_$returns$_t_bytes32_$","typeString":"function (string memory,string memory,uint256) view returns (bytes32)"}},"id":1744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1981:43:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":1735,"id":1745,"nodeType":"Return","src":"1974:50:14"}]},"documentation":{"id":1727,"nodeType":"StructuredDocumentation","src":"1602:166:14","text":" @notice Make EIP712 domain separator\n @param name Contract name\n @param version Contract version\n @return Domain separator"},"implemented":true,"kind":"function","modifiers":[],"name":"makeDomainSeparator","overrides":null,"parameters":{"id":1732,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1729,"mutability":"mutable","name":"name","nodeType":"VariableDeclaration","overrides":null,"scope":1747,"src":"1802:18:14","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1728,"name":"string","nodeType":"ElementaryTypeName","src":"1802:6:14","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"},{"constant":false,"id":1731,"mutability":"mutable","name":"version","nodeType":"VariableDeclaration","overrides":null,"scope":1747,"src":"1822:21:14","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1730,"name":"string","nodeType":"ElementaryTypeName","src":"1822:6:14","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1801:43:14"},"returnParameters":{"id":1735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1734,"mutability":"mutable","name":"","nodeType":"VariableDeclaration","overrides":null,"scope":1747,"src":"1868:7:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1733,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1868:7:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1867:9:14"},"scope":1748,"stateMutability":"view","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"library","documentation":{"id":1689,"nodeType":"StructuredDocumentation","src":"684:83:14","text":" @title EIP712\n @notice A library that provides EIP712 helper functions"},"fullyImplemented":true,"linearizedBaseContracts":[1748],"name":"EIP712","scope":1749}],"license":"Apache-2.0"},"id":14}