UNPKG

tokenboost-solidity-erc20sale

Version:
1,088 lines (1,087 loc) 347 kB
{ "contractName": "Elements", "abi": [], "bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582034fb50fe095dd244cfeee8e5f897b1fba19d0dcb3b43b6f7acba95ef6ea676c40029", "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582034fb50fe095dd244cfeee8e5f897b1fba19d0dcb3b43b6f7acba95ef6ea676c40029", "sourceMap": "105:1637:20:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", "deployedSourceMap": "105:1637:20:-;;;;;;;;", "source": "pragma solidity ^0.4.24;\n\nimport \"./Actions.sol\";\nimport \"./Tables.sol\";\nimport \"../utils/strings.sol\";\n\nlibrary Elements {\n using strings for *;\n using Actions for Actions.Action;\n using Tables for Tables.Table;\n\n struct Element {\n bool exists;\n string id;\n string type_;\n string label;\n string data;\n Actions.Action action;\n Tables.Table table;\n }\n\n function empty() internal pure returns (Element memory) {\n return Element(false, \"\", \"\", \"\", \"\", Actions.empty(), Tables.empty());\n }\n\n function toJson(Element memory _self) internal pure returns (string) {\n if (_self.exists) {\n string memory json = '{\"id\":\"';\n json = json.toSlice().concat(_self.id.toSlice());\n json = json.toSlice().concat('\"'.toSlice());\n if (_self.action.exists) {\n json = json.toSlice().concat(', \"action\":'.toSlice());\n json = json.toSlice().concat(_self.action.toJson().toSlice());\n }\n if (_self.table.exists) {\n json = json.toSlice().concat(', \"table\":'.toSlice());\n json = json.toSlice().concat(_self.table.toJson().toSlice());\n }\n json = json.toSlice().concat(',\"type\":\"'.toSlice());\n json = json.toSlice().concat(_self.type_.toSlice());\n json = json.toSlice().concat('\",\"label\":\"'.toSlice());\n json = json.toSlice().concat(_self.label.toSlice());\n json = json.toSlice().concat('\",\"data\":'.toSlice());\n json = json.toSlice().concat(_self.data.toSlice());\n return json.toSlice().concat('}'.toSlice());\n } else {\n return \"null\";\n }\n }\n}", "sourcePath": "tokenboost-solidity/contracts/widget/Elements.sol", "ast": { "absolutePath": "tokenboost-solidity/contracts/widget/Elements.sol", "exportedSymbols": { "Elements": [ 4710 ] }, "id": 4711, "nodeType": "SourceUnit", "nodes": [ { "id": 4483, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:20" }, { "absolutePath": "tokenboost-solidity/contracts/widget/Actions.sol", "file": "./Actions.sol", "id": 4484, "nodeType": "ImportDirective", "scope": 4711, "sourceUnit": 4482, "src": "26:23:20", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "tokenboost-solidity/contracts/widget/Tables.sol", "file": "./Tables.sol", "id": 4485, "nodeType": "ImportDirective", "scope": 4711, "sourceUnit": 5115, "src": "50:22:20", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "tokenboost-solidity/contracts/utils/strings.sol", "file": "../utils/strings.sol", "id": 4486, "nodeType": "ImportDirective", "scope": 4711, "sourceUnit": 4334, "src": "73:30:20", "symbolAliases": [], "unitAlias": "" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "library", "documentation": null, "fullyImplemented": true, "id": 4710, "linearizedBaseContracts": [ 4710 ], "name": "Elements", "nodeType": "ContractDefinition", "nodes": [ { "id": 4488, "libraryName": { "contractScope": null, "id": 4487, "name": "strings", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 4333, "src": "134:7:20", "typeDescriptions": { "typeIdentifier": "t_contract$_strings_$4333", "typeString": "library strings" } }, "nodeType": "UsingForDirective", "src": "128:20:20", "typeName": null }, { "id": 4491, "libraryName": { "contractScope": null, "id": 4489, "name": "Actions", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 4481, "src": "159:7:20", "typeDescriptions": { "typeIdentifier": "t_contract$_Actions_$4481", "typeString": "library Actions" } }, "nodeType": "UsingForDirective", "src": "153:33:20", "typeName": { "contractScope": null, "id": 4490, "name": "Actions.Action", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 4353, "src": "171:14:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Action_$4353_storage_ptr", "typeString": "struct Actions.Action" } } }, { "id": 4494, "libraryName": { "contractScope": null, "id": 4492, "name": "Tables", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 5114, "src": "197:6:20", "typeDescriptions": { "typeIdentifier": "t_contract$_Tables_$5114", "typeString": "library Tables" } }, "nodeType": "UsingForDirective", "src": "191:30:20", "typeName": { "contractScope": null, "id": 4493, "name": "Tables.Table", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 4810, "src": "208:12:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Table_$4810_storage_ptr", "typeString": "struct Tables.Table" } } }, { "canonicalName": "Elements.Element", "id": 4509, "members": [ { "constant": false, "id": 4496, "name": "exists", "nodeType": "VariableDeclaration", "scope": 4509, "src": "252:11:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 4495, "name": "bool", "nodeType": "ElementaryTypeName", "src": "252:4:20", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 4498, "name": "id", "nodeType": "VariableDeclaration", "scope": 4509, "src": "273:9:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" }, "typeName": { "id": 4497, "name": "string", "nodeType": "ElementaryTypeName", "src": "273:6:20", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 4500, "name": "type_", "nodeType": "VariableDeclaration", "scope": 4509, "src": "292:12:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" }, "typeName": { "id": 4499, "name": "string", "nodeType": "ElementaryTypeName", "src": "292:6:20", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 4502, "name": "label", "nodeType": "VariableDeclaration", "scope": 4509, "src": "314:12:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" }, "typeName": { "id": 4501, "name": "string", "nodeType": "ElementaryTypeName", "src": "314:6:20", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 4504, "name": "data", "nodeType": "VariableDeclaration", "scope": 4509, "src": "336:11:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" }, "typeName": { "id": 4503, "name": "string", "nodeType": "ElementaryTypeName", "src": "336:6:20", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 4506, "name": "action", "nodeType": "VariableDeclaration", "scope": 4509, "src": "357:21:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_struct$_Action_$4353_storage_ptr", "typeString": "struct Actions.Action" }, "typeName": { "contractScope": null, "id": 4505, "name": "Actions.Action", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 4353, "src": "357:14:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Action_$4353_storage_ptr", "typeString": "struct Actions.Action" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 4508, "name": "table", "nodeType": "VariableDeclaration", "scope": 4509, "src": "388:18:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_struct$_Table_$4810_storage_ptr", "typeString": "struct Tables.Table" }, "typeName": { "contractScope": null, "id": 4507, "name": "Tables.Table", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 4810, "src": "388:12:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Table_$4810_storage_ptr", "typeString": "struct Tables.Table" } }, "value": null, "visibility": "internal" } ], "name": "Element", "nodeType": "StructDefinition", "scope": 4710, "src": "227:186:20", "visibility": "public" }, { "body": { "id": 4528, "nodeType": "Block", "src": "475:87:20", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "66616c7365", "id": 4515, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "500:5:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, { "argumentTypes": null, "hexValue": "", "id": 4516, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "507:2:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, "value": "" }, { "argumentTypes": null, "hexValue": "", "id": 4517, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "511:2:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, "value": "" }, { "argumentTypes": null, "hexValue": "", "id": 4518, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "515:2:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, "value": "" }, { "argumentTypes": null, "hexValue": "", "id": 4519, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "519:2:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, "value": "" }, { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "expression": { "argumentTypes": null, "id": 4520, "name": "Actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4481, "src": "523:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Actions_$4481_$", "typeString": "type(library Actions)" } }, "id": 4521, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "empty", "nodeType": "MemberAccess", "referencedDeclaration": 4369, "src": "523:13:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$__$returns$_t_struct$_Action_$4353_memory_ptr_$", "typeString": "function () pure returns (struct Actions.Action memory)" } }, "id": 4522, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "523:15:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Action_$4353_memory_ptr", "typeString": "struct Actions.Action memory" } }, { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "expression": { "argumentTypes": null, "id": 4523, "name": "Tables", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5114, "src": "540:6:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Tables_$5114_$", "typeString": "type(library Tables)" } }, "id": 4524, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "empty", "nodeType": "MemberAccess", "referencedDeclaration": 4830, "src": "540:12:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$__$returns$_t_struct$_Table_$4810_memory_ptr_$", "typeString": "function () pure returns (struct Tables.Table memory)" } }, "id": 4525, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "540:14:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Table_$4810_memory_ptr", "typeString": "struct Tables.Table memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" }, { "typeIdentifier": "t_struct$_Action_$4353_memory_ptr", "typeString": "struct Actions.Action memory" }, { "typeIdentifier": "t_struct$_Table_$4810_memory_ptr", "typeString": "struct Tables.Table memory" } ], "id": 4514, "name": "Element", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4509, "src": "492:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_struct$_Element_$4509_storage_ptr_$", "typeString": "type(struct Elements.Element storage pointer)" } }, "id": 4526, "isConstant": false, "isLValue": false, "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "492:63:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Element_$4509_memory", "typeString": "struct Elements.Element memory" } }, "functionReturnParameters": 4513, "id": 4527, "nodeType": "Return", "src": "485:70:20" } ] }, "documentation": null, "id": 4529, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "empty", "nodeType": "FunctionDefinition", "parameters": { "id": 4510, "nodeType": "ParameterList", "parameters": [], "src": "433:2:20" }, "payable": false, "returnParameters": { "id": 4513, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4512, "name": "", "nodeType": "VariableDeclaration", "scope": 4529, "src": "459:7:20", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_Element_$4509_memory_ptr", "typeString": "struct Elements.Element" }, "typeName": { "contractScope": null, "id": 4511, "name": "Element", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 4509, "src": "459:7:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Element_$4509_storage_ptr", "typeString": "struct Elements.Element" } }, "value": null, "visibility": "internal" } ], "src": "458:16:20" }, "scope": 4710, "src": "419:143:20", "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { "id": 4708, "nodeType": "Block", "src": "637:1103:20", "statements": [ { "condition": { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 4536, "name": "_self", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4531, "src": "651:5:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Element_$4509_memory_ptr", "typeString": "struct Elements.Element memory" } }, "id": 4537, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", "referencedDeclaration": 4496, "src": "651:12:20", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 4706, "nodeType": "Block", "src": "1696:38:20", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "6e756c6c", "id": 4704, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1717:6:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_efbde2c3aee204a69b7696d4b10ff31137fe78e3946306284f806e2dfc68b805", "typeString": "literal_string \"null\"" }, "value": "null" }, "functionReturnParameters": 4535, "id": 4705, "nodeType": "Return", "src": "1710:13:20" } ] }, "id": 4707, "nodeType": "IfStatement", "src": "647:1087:20", "trueBody": { "id": 4703, "nodeType": "Block", "src": "665:1025:20", "statements": [ { "assignments": [ 4539 ], "declarations": [ { "constant": false, "id": 4539, "name": "json", "nodeType": "VariableDeclaration", "scope": 4709, "src": "679:18:20", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 4538, "name": "string", "nodeType": "ElementaryTypeName", "src": "679:6:20", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" } ], "id": 4541, "initialValue": { "argumentTypes": null, "hexValue": "7b226964223a22", "id": 4540, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "700:9:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_334dd9a3f36c190d9290f44b1b75d9f1f0e8c64c9d2b286cea8c274de5e469a6", "typeString": "literal_string \"{\"id\":\"\"" }, "value": "{\"id\":\"" }, "nodeType": "VariableDeclarationStatement", "src": "679:30:20" }, { "expression": { "argumentTypes": null, "id": 4552, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 4542, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4539, "src": "723:4:20", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 4547, "name": "_self", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4531, "src": "752:5:20", "typeDescriptions": { "typeIdentifier": "t_struct$_Element_$4509_memory_ptr", "typeString": "struct Elements.Element memory" } }, "id": 4548, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "id", "nodeType": "MemberAccess", "referencedDeclaration": 4498, "src": "752:8:20", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, "id": 4549, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toSlice", "nodeType": "MemberAccess", "referencedDeclaration": 2705, "src": "752:16:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_struct$_slice_$2645_memory_ptr_$bound_to$_t_string_memory_ptr_$", "typeString": "function (string memory) pure returns (struct strings.slice memory)" } }, "id": 4550, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "752:18:20", "typeDescriptions": { "typeIdentifier": "t_struct$_slice_$2645_memory_ptr", "typeString": "struct strings.slice memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_struct$_slice_$2645_memory_ptr", "typeString": "struct strings.slice memory" } ], "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "expression": { "argumentTypes": null, "id": 4543, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4539, "src": "730:4:20", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "id": 4544, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toSlice", "nodeType": "MemberAccess", "referencedDeclaration": 2705, "src": "730:12:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_struct$_slice_$2645_memory_ptr_$bound_to$_t_string_memory_ptr_$", "typeString": "function (string memory) pure returns (struct strings.slice memory)" } }, "id": 4545, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "730:14:20", "typeDescriptions": { "typeIdentifier": "t_struct$_slice_$2645_memory_ptr", "typeString": "struct strings.slice memory" } }, "id": 4546, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "concat", "nodeType": "MemberAccess", "referencedDeclaration": 4218, "src": "730:21:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_slice_$2645_memory_ptr_$_t_struct$_slice_$2645_memory_ptr_$returns$_t_string_memory_ptr_$bound_to$_t_struct$_slice_$2645_memory_ptr_$", "typeString": "function (struct strings.slice memory,struct strings.slice memory) pure returns (string memory)" } }, "id": 4551, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "730:41:20", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "src": "723:48:20", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "id": 4553, "nodeType": "ExpressionStatement", "src": "723:48:20" }, { "expression": { "argumentTypes": null, "id": 4563, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 4554, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4539, "src": "785:4:20", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "expression": { "argumentTypes": null, "hexValue": "22", "id": 4559, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "814:3:20", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_6e9f33448a4153023cdaf3eb759f1afdc24aba433a3e18b683f8c04a6eaa69f0", "typeString": "literal_string \"\"\"" }, "value": "\"" }, "id": 4560, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toSlice", "nodeType": "MemberAccess", "referencedDeclaration": 2705, "src": "814:11:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_struct$_slice_$2645_memory_ptr_$bound_to$_t_string_memory_ptr_$", "typeString": "function (string memory) pure returns (struct strings.slice memory)" } }, "id": 4561, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "814:13:20", "typeDescriptions": { "typeIdentifier": "t_struct$_slice_$2645_memory_ptr", "typeString": "struct strings.slice memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_struct$_slice_$2645_memory_ptr", "typeString": "struct strings.slice memory" } ], "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], "expression": { "argumentTypes": null, "id": 4555, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4539, "src": "792:4:20", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "id": 4556, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toSlice", "nodeType": "MemberAccess", "referencedDeclaration": 2705, "src": "792:12:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_struct$_slice_$2645_memory_ptr_$bound_to$_t_string_memory_ptr_$", "typeString": "function (string memory) pure returns (struct strings.slice memory)" } },