UNPKG

@etherisc/registry-contracts

Version:

Etherisc's smart contracts for the registry.

1,279 lines 539 kB
{ "abi": [], "allSourcePaths": { "5": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/utils/math/MathUpgradeable.sol" }, "ast": { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts-upgradeable@4.8.2/contracts/utils/math/MathUpgradeable.sol", "exportedSymbols": { "MathUpgradeable": [ 16662 ] }, "id": 16663, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 15799, "literals": [ "solidity", "^", "0.8", ".0" ], "nodeType": "PragmaDirective", "src": "103:23:5" }, { "abstract": false, "baseContracts": [], "canonicalName": "MathUpgradeable", "contractDependencies": [], "contractKind": "library", "documentation": { "id": 15800, "nodeType": "StructuredDocumentation", "src": "128:73:5", "text": " @dev Standard math utilities missing in the Solidity language." }, "fullyImplemented": true, "id": 16662, "linearizedBaseContracts": [ 16662 ], "name": "MathUpgradeable", "nameLocation": "210:15:5", "nodeType": "ContractDefinition", "nodes": [ { "canonicalName": "MathUpgradeable.Rounding", "id": 15804, "members": [ { "id": 15801, "name": "Down", "nameLocation": "256:4:5", "nodeType": "EnumValue", "src": "256:4:5" }, { "id": 15802, "name": "Up", "nameLocation": "298:2:5", "nodeType": "EnumValue", "src": "298:2:5" }, { "id": 15803, "name": "Zero", "nameLocation": "329:4:5", "nodeType": "EnumValue", "src": "329:4:5" } ], "name": "Rounding", "nameLocation": "237:8:5", "nodeType": "EnumDefinition", "src": "232:122:5" }, { "body": { "id": 15821, "nodeType": "Block", "src": "491:37:5", "statements": [ { "expression": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15816, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15814, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15807, "src": "508:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 15815, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15809, "src": "512:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "508:5:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "id": 15818, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15809, "src": "520:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 15819, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "508:13:5", "trueExpression": { "id": 15817, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15807, "src": "516:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 15813, "id": 15820, "nodeType": "Return", "src": "501:20:5" } ] }, "documentation": { "id": 15805, "nodeType": "StructuredDocumentation", "src": "360:59:5", "text": " @dev Returns the largest of two numbers." }, "id": 15822, "implemented": true, "kind": "function", "modifiers": [], "name": "max", "nameLocation": "433:3:5", "nodeType": "FunctionDefinition", "parameters": { "id": 15810, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15807, "mutability": "mutable", "name": "a", "nameLocation": "445:1:5", "nodeType": "VariableDeclaration", "scope": 15822, "src": "437:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15806, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "437:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 15809, "mutability": "mutable", "name": "b", "nameLocation": "456:1:5", "nodeType": "VariableDeclaration", "scope": 15822, "src": "448:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15808, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "448:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "436:22:5" }, "returnParameters": { "id": 15813, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15812, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 15822, "src": "482:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15811, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "482:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "481:9:5" }, "scope": 16662, "src": "424:104:5", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "body": { "id": 15839, "nodeType": "Block", "src": "666:37:5", "statements": [ { "expression": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15834, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15832, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15825, "src": "683:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 15833, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15827, "src": "687:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "683:5:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "id": 15836, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15827, "src": "695:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 15837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "683:13:5", "trueExpression": { "id": 15835, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15825, "src": "691:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 15831, "id": 15838, "nodeType": "Return", "src": "676:20:5" } ] }, "documentation": { "id": 15823, "nodeType": "StructuredDocumentation", "src": "534:60:5", "text": " @dev Returns the smallest of two numbers." }, "id": 15840, "implemented": true, "kind": "function", "modifiers": [], "name": "min", "nameLocation": "608:3:5", "nodeType": "FunctionDefinition", "parameters": { "id": 15828, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15825, "mutability": "mutable", "name": "a", "nameLocation": "620:1:5", "nodeType": "VariableDeclaration", "scope": 15840, "src": "612:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15824, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "612:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 15827, "mutability": "mutable", "name": "b", "nameLocation": "631:1:5", "nodeType": "VariableDeclaration", "scope": 15840, "src": "623:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15826, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "623:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "611:22:5" }, "returnParameters": { "id": 15831, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15830, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 15840, "src": "657:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15829, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "657:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "656:9:5" }, "scope": 16662, "src": "599:104:5", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "body": { "id": 15862, "nodeType": "Block", "src": "887:82:5", "statements": [ { "expression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15850, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15843, "src": "942:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "id": 15851, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15845, "src": "946:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "942:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 15853, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "941:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15856, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15854, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15843, "src": "952:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "^", "rightExpression": { "id": 15855, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15845, "src": "956:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "952:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 15857, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "951:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { "hexValue": "32", "id": 15858, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "961:1:5", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, "src": "951:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "941:21:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 15849, "id": 15861, "nodeType": "Return", "src": "934:28:5" } ] }, "documentation": { "id": 15841, "nodeType": "StructuredDocumentation", "src": "709:102:5", "text": " @dev Returns the average of two numbers. The result is rounded towards\n zero." }, "id": 15863, "implemented": true, "kind": "function", "modifiers": [], "name": "average", "nameLocation": "825:7:5", "nodeType": "FunctionDefinition", "parameters": { "id": 15846, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15843, "mutability": "mutable", "name": "a", "nameLocation": "841:1:5", "nodeType": "VariableDeclaration", "scope": 15863, "src": "833:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15842, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "833:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 15845, "mutability": "mutable", "name": "b", "nameLocation": "852:1:5", "nodeType": "VariableDeclaration", "scope": 15863, "src": "844:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15844, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "844:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "832:22:5" }, "returnParameters": { "id": 15849, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15848, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 15863, "src": "878:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15847, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "878:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "877:9:5" }, "scope": 16662, "src": "816:153:5", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "body": { "id": 15887, "nodeType": "Block", "src": "1239:123:5", "statements": [ { "expression": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15875, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15873, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15866, "src": "1327:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "hexValue": "30", "id": 15874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1332:1:5", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1327:6:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15884, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15882, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15879, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15877, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15866, "src": "1341:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "31", "id": 15878, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1345:1:5", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "src": "1341:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 15880, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1340:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { "id": 15881, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15868, "src": "1350:1:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "1340:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { "hexValue": "31", "id": 15883, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1354:1:5", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "src": "1340:15:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 15885, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "1327:28:5", "trueExpression": { "hexValue": "30", "id": 15876, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1336:1:5", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 15872, "id": 15886, "nodeType": "Return", "src": "1320:35:5" } ] }, "documentation": { "id": 15864, "nodeType": "StructuredDocumentation", "src": "975:188:5", "text": " @dev Returns the ceiling of the division of two numbers.\n This differs from standard division with `/` in that it rounds up instead\n of rounding down." }, "id": 15888, "implemented": true, "kind": "function", "modifiers": [], "name": "ceilDiv", "nameLocation": "1177:7:5", "nodeType": "FunctionDefinition", "parameters": { "id": 15869, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15866, "mutability": "mutable", "name": "a", "nameLocation": "1193:1:5", "nodeType": "VariableDeclaration", "scope": 15888, "src": "1185:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15865, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1185:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 15868, "mutability": "mutable", "name": "b", "nameLocation": "1204:1:5", "nodeType": "VariableDeclaration", "scope": 15888, "src": "1196:9:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15867, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1196:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1184:22:5" }, "returnParameters": { "id": 15872, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15871, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 15888, "src": "1230:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15870, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1230:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1229:9:5" }, "scope": 16662, "src": "1168:194:5", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "body": { "id": 16009, "nodeType": "Block", "src": "1806:3797:5", "statements": [ { "id": 16008, "nodeType": "UncheckedBlock", "src": "1816:3781:5", "statements": [ { "assignments": [ 15901 ], "declarations": [ { "constant": false, "id": 15901, "mutability": "mutable", "name": "prod0", "nameLocation": "2145:5:5", "nodeType": "VariableDeclaration", "scope": 16008, "src": "2137:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15900, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2137:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 15902, "nodeType": "VariableDeclarationStatement", "src": "2137:13:5" }, { "assignments": [ 15904 ], "declarations": [ { "constant": false, "id": 15904, "mutability": "mutable", "name": "prod1", "nameLocation": "2217:5:5", "nodeType": "VariableDeclaration", "scope": 16008, "src": "2209:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15903, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2209:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 15905, "nodeType": "VariableDeclarationStatement", "src": "2209:13:5" }, { "AST": { "nodeType": "YulBlock", "src": "2289:157:5", "statements": [ { "nodeType": "YulVariableDeclaration", "src": "2307:30:5", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "2324:1:5" }, { "name": "y", "nodeType": "YulIdentifier", "src": "2327:1:5" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "2334:1:5", "type": "", "value": "0" } ], "functionName": { "name": "not", "nodeType": "YulIdentifier", "src": "2330:3:5" }, "nodeType": "YulFunctionCall", "src": "2330:6:5" } ], "functionName": { "name": "mulmod", "nodeType": "YulIdentifier", "src": "2317:6:5" }, "nodeType": "YulFunctionCall", "src": "2317:20:5" }, "variables": [ { "name": "mm", "nodeType": "YulTypedName", "src": "2311:2:5", "type": "" } ] }, { "nodeType": "YulAssignment", "src": "2354:18:5", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "2367:1:5" }, { "name": "y", "nodeType": "YulIdentifier", "src": "2370:1:5" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", "s