{
	"language": "Solidity",
	"sources":
	{
		"C":
		{
			"content": "//SPDX-License-Identifier: GPL-2.0\npragma solidity >=0.0;\npragma abicoder v2;\n\ncontract C\n{\n	int public constant constVar = 41;\n	int immutable immutVar = 42;\n	int public stateVar;\n\n	constructor(int _init)\n	{\n		stateVar = _init;\n	}\n\n	function f() external pure returns (int)\n	{\n		return constVar + immutVar;\n	}\n	modifier m()\n	{\n		stateVar++;\n		_;\n	}\n	function f2() m public returns (int)\n	{\n		return stateVar + this.f() + immutVar;\n	}\n}\n"
		},
		"D":
		{
			"content": "//SPDX-License-Identifier: GPL-2.0\npragma solidity >=0.0;\npragma abicoder v2;\nimport \"C\";\n\ncontract D is C(3)\n{\n	constructor(int _init2)\n	{\n		stateVar += _init2;\n	}\n}\n"
		}
	},
	"settings":
	{
		"outputSelection":
		{
			"*": { "*": ["ir", "irOptimized"] }
		},
		"optimizer": { "enabled": true }
	}
}