strict digraph "tests/contract_testcases/solana/using_import.sol" {
	S [label="name:S\ntests/contract_testcases/solana/simple.sol:3:8-9\nfield name:f1 ty:int64\nfield name:f2 ty:bool"]
	inc [label="function inc\ntests/contract_testcases/solana/simple.sol:7:1-23\nsignature inc((int64,bool))\nvisibility internal\nmutability pure"]
	parameters [label="parameters\nstruct S s"]
	expr [label="expression\ntests/contract_testcases/solana/simple.sol:7:26-35"]
	assign [label="assign\nvoid\ntests/contract_testcases/solana/simple.sol:7:26-35"]
	structmember [label="struct member #0 int64\ntests/contract_testcases/solana/simple.sol:7:28-30"]
	variable [label="variable: s\nstruct S\ntests/contract_testcases/solana/simple.sol:7:26-27"]
	add [label="add\nint64\ntests/contract_testcases/solana/simple.sol:7:26-35"]
	load [label="load int64\ntests/contract_testcases/solana/simple.sol:7:26-35"]
	structmember_11 [label="struct member #0 int64\ntests/contract_testcases/solana/simple.sol:7:28-30"]
	variable_12 [label="variable: s\nstruct S\ntests/contract_testcases/solana/simple.sol:7:26-27"]
	number_literal [label="int64 literal: 1\ntests/contract_testcases/solana/simple.sol:7:34-35"]
	dec [label="function dec\ntests/contract_testcases/solana/using_import.sol:3:1-31\nsignature dec((int64,bool))\nvisibility internal\nmutability pure"]
	parameters_15 [label="parameters\nstruct S s"]
	expr_16 [label="expression\ntests/contract_testcases/solana/using_import.sol:3:34-43"]
	assign_17 [label="assign\nvoid\ntests/contract_testcases/solana/using_import.sol:3:34-43"]
	structmember_18 [label="struct member #0 int64\ntests/contract_testcases/solana/using_import.sol:3:36-38"]
	variable_19 [label="variable: s\nstruct S\ntests/contract_testcases/solana/using_import.sol:3:34-35"]
	subtract [label="subtract\nint64\ntests/contract_testcases/solana/using_import.sol:3:34-43"]
	load_21 [label="load int64\ntests/contract_testcases/solana/using_import.sol:3:34-43"]
	structmember_22 [label="struct member #0 int64\ntests/contract_testcases/solana/using_import.sol:3:36-38"]
	variable_23 [label="variable: s\nstruct S\ntests/contract_testcases/solana/using_import.sol:3:34-35"]
	number_literal_24 [label="int64 literal: 1\ntests/contract_testcases/solana/using_import.sol:3:42-43"]
	contract [label="contract c\ntests/contract_testcases/solana/using_import.sol:6:1-11:2"]
	test [label="function test\ncontract: c\ntests/contract_testcases/solana/using_import.sol:7:2-35\nsignature test((int64,bool))\nvisibility public\nmutability nonpayable"]
	parameters_28 [label="parameters\nstruct S s"]
	expr_29 [label="expression\ntests/contract_testcases/solana/using_import.sol:8:3-10"]
	call_internal_function [label="call internal function\ntests/contract_testcases/solana/using_import.sol:8:3-10"]
	internal_function [label="function(struct S) internal pure returns (void)\nfree function inc\ntests/contract_testcases/solana/using_import.sol:8:3-10"]
	variable_32 [label="variable: s\nstruct S\ntests/contract_testcases/solana/using_import.sol:8:3-4"]
	expr_33 [label="expression\ntests/contract_testcases/solana/using_import.sol:9:3-10"]
	call_internal_function_34 [label="call internal function\ntests/contract_testcases/solana/using_import.sol:9:3-10"]
	internal_function_35 [label="function(struct S) internal pure returns (void)\nfree function dec\ntests/contract_testcases/solana/using_import.sol:9:3-10"]
	variable_36 [label="variable: s\nstruct S\ntests/contract_testcases/solana/using_import.sol:9:3-4"]
	contract_37 [label="contract A\ntests/contract_testcases/solana/simple.sol:1:1-14"]
	contract_38 [label="contract L\ntests/contract_testcases/solana/simple.sol:2:1-13"]
	diagnostic [label="found contract 'c'\nlevel Debug\ntests/contract_testcases/solana/using_import.sol:6:1-11:2"]
	diagnostic_41 [label="function can be declared 'pure'\nlevel Warning\ntests/contract_testcases/solana/using_import.sol:7:2-35"]
	diagnostic_42 [label="found contract 'A'\nlevel Debug\ntests/contract_testcases/solana/simple.sol:1:1-14"]
	diagnostic_43 [label="found library 'L'\nlevel Debug\ntests/contract_testcases/solana/simple.sol:2:1-13"]
	structs -> S
	free_functions -> inc [label="function"]
	inc -> parameters [label="parameters"]
	inc -> expr [label="body"]
	expr -> assign [label="expr"]
	assign -> structmember [label="left"]
	structmember -> variable [label="var"]
	assign -> add [label="right"]
	add -> load [label="left"]
	load -> structmember_11 [label="expr"]
	structmember_11 -> variable_12 [label="var"]
	add -> number_literal [label="right"]
	free_functions -> dec [label="function"]
	dec -> parameters_15 [label="parameters"]
	dec -> expr_16 [label="body"]
	expr_16 -> assign_17 [label="expr"]
	assign_17 -> structmember_18 [label="left"]
	structmember_18 -> variable_19 [label="var"]
	assign_17 -> subtract [label="right"]
	subtract -> load_21 [label="left"]
	load_21 -> structmember_22 [label="expr"]
	structmember_22 -> variable_23 [label="var"]
	subtract -> number_literal_24 [label="right"]
	contracts -> contract
	contract -> test [label="function"]
	test -> parameters_28 [label="parameters"]
	test -> expr_29 [label="body"]
	expr_29 -> call_internal_function [label="expr"]
	call_internal_function -> internal_function [label="function"]
	call_internal_function -> variable_32 [label="arg #0"]
	expr_29 -> expr_33 [label="next"]
	expr_33 -> call_internal_function_34 [label="expr"]
	call_internal_function_34 -> internal_function_35 [label="function"]
	call_internal_function_34 -> variable_36 [label="arg #0"]
	contracts -> contract_37
	contracts -> contract_38
	diagnostics -> diagnostic [label="Debug"]
	diagnostics -> diagnostic_41 [label="Warning"]
	diagnostics -> diagnostic_42 [label="Debug"]
	diagnostics -> diagnostic_43 [label="Debug"]
}
