{ "absolutePath": "a", "id": 23, "nodeType": "SourceUnit", "nodes": [ { "abstract": false, "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "id": 5, "name": "A", "nodeType": "ContractDefinition", "nodes": [ { "body": { "id": 3, "nodeType": "Block", "src": "45:2:1", "statements": [] }, "id": 4, "implemented": true, "kind": "function", "modifiers": [], "name": "f", "nodeType": "FunctionDefinition", "parameters": { "id": 1, "nodeType": "ParameterList", "parameters": [], "src": "27:2:1" }, "returnParameters": { "id": 2, "nodeType": "ParameterList", "parameters": [], "src": "45:0:1" }, "src": "17:30:1", "stateMutability": "nonpayable", "virtual": true, "visibility": "public" } ], "src": "0:49:1" }, { "abstract": false, "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "id": 10, "name": "B", "nodeType": "ContractDefinition", "nodes": [ { "body": { "id": 8, "nodeType": "Block", "src": "95:2:1", "statements": [] }, "id": 9, "implemented": true, "kind": "function", "modifiers": [], "name": "f", "nodeType": "FunctionDefinition", "parameters": { "id": 6, "nodeType": "ParameterList", "parameters": [], "src": "77:2:1" }, "returnParameters": { "id": 7, "nodeType": "ParameterList", "parameters": [], "src": "95:0:1" }, "src": "67:30:1", "stateMutability": "nonpayable", "virtual": true, "visibility": "public" } ], "src": "50:49:1" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 11, "name": "A", "nodeType": "UserDefinedTypeName", "src": "114:1:1", "typeDescriptions": {} }, "id": 12, "nodeType": "InheritanceSpecifier", "src": "114:1:1" }, { "baseName": { "id": 13, "name": "B", "nodeType": "UserDefinedTypeName", "src": "117:1:1", "typeDescriptions": {} }, "id": 14, "nodeType": "InheritanceSpecifier", "src": "117:1:1" } ], "contractDependencies": [], "contractKind": "contract", "id": 22, "name": "C", "nodeType": "ContractDefinition", "nodes": [ { "body": { "id": 20, "nodeType": "Block", "src": "160:2:1", "statements": [] }, "id": 21, "implemented": true, "kind": "function", "modifiers": [], "name": "f", "nodeType": "FunctionDefinition", "overrides": { "id": 18, "nodeType": "OverrideSpecifier", "overrides": [ { "id": 16, "name": "A", "nodeType": "UserDefinedTypeName", "src": "154:1:1", "typeDescriptions": {} }, { "id": 17, "name": "B", "nodeType": "UserDefinedTypeName", "src": "157:1:1", "typeDescriptions": {} } ], "src": "145:14:1" }, "parameters": { "id": 15, "nodeType": "ParameterList", "parameters": [], "src": "135:2:1" }, "returnParameters": { "id": 19, "nodeType": "ParameterList", "parameters": [], "src": "160:0:1" }, "src": "125:37:1", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" } ], "src": "100:64:1" } ], "src": "0:165:1" }