strict digraph "tests/contract_testcases/solana/yul/yul_switch.sol" {
	contract [label="contract testTypes\ntests/contract_testcases/solana/yul/yul_switch.sol:1:1-18:2"]
	var [label="variable b\nvisibility internal\ntests/contract_testcases/solana/yul/yul_switch.sol:2:5-14"]
	testAsm [label="function testAsm\ncontract: testTypes\ntests/contract_testcases/solana/yul/yul_switch.sol:3:5-74\nsignature testAsm(uint128[])\nvisibility public\nmutability pure"]
	parameters [label="parameters\nuint128[] vl"]
	returns [label="returns\nuint256 "]
	var_decl [label="variable decl uint256 y\ntests/contract_testcases/solana/yul/yul_switch.sol:4:9-22"]
	number_literal [label="uint256 literal: 0\ntests/contract_testcases/solana/yul/yul_switch.sol:4:21-22"]
	inline_assembly [label="inline assembly\ntests/contract_testcases/solana/yul/yul_switch.sol:5:9-14:10"]
	switch [label="yul switch\ntests/contract_testcases/solana/yul/yul_switch.sol:6:13-11:14"]
	yul_suffix_access [label="yul suffix 'length' access\ntests/contract_testcases/solana/yul/yul_switch.sol:6:20-29"]
	solidity_variable [label="solidity variable: vl\nuint128[]\ntests/contract_testcases/solana/yul/yul_switch.sol:6:20-22"]
	case [label="yul switch case\ntests/contract_testcases/solana/yul/yul_switch.sol:7:13-41"]
	yul_number_literal [label="uint256 literal: 1\ntests/contract_testcases/solana/yul/yul_switch.sol:7:18-19"]
	assembly_block [label="assembly block\ntests/contract_testcases/solana/yul/yul_switch.sol:7:13-41"]
	yul_assignment [label="yul assignment\ntests/contract_testcases/solana/yul/yul_switch.sol:7:21-40"]
	solidity_variable_16 [label="solidity variable: y\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:7:21-22"]
	yul_builtin_call [label="yul builtin call 'mul'\ntests/contract_testcases/solana/yul/yul_switch.sol:7:26-40"]
	yul_suffix_access_18 [label="yul suffix 'slot' access\ntests/contract_testcases/solana/yul/yul_switch.sol:7:30-36"]
	storage_var [label="storage variable\ntestTypes.b\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:7:30-31"]
	yul_number_literal_20 [label="uint256 literal: 2\ntests/contract_testcases/solana/yul/yul_switch.sol:7:38-39"]
	case_21 [label="yul switch case\ntests/contract_testcases/solana/yul/yul_switch.sol:8:13-43"]
	yul_number_literal_22 [label="uint256 literal: 2\ntests/contract_testcases/solana/yul/yul_switch.sol:8:18-19"]
	assembly_block_23 [label="assembly block\ntests/contract_testcases/solana/yul/yul_switch.sol:8:13-43"]
	yul_assignment_24 [label="yul assignment\ntests/contract_testcases/solana/yul/yul_switch.sol:8:21-42"]
	solidity_variable_25 [label="solidity variable: y\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:8:21-22"]
	yul_builtin_call_26 [label="yul builtin call 'shr'\ntests/contract_testcases/solana/yul/yul_switch.sol:8:26-42"]
	yul_suffix_access_27 [label="yul suffix 'offset' access\ntests/contract_testcases/solana/yul/yul_switch.sol:8:30-38"]
	storage_var_28 [label="storage variable\ntestTypes.b\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:8:30-31"]
	yul_number_literal_29 [label="uint256 literal: 2\ntests/contract_testcases/solana/yul/yul_switch.sol:8:40-41"]
	default [label="yul switch default\ntests/contract_testcases/solana/yul/yul_switch.sol:9:13-11:14"]
	assembly_block_31 [label="assembly block\ntests/contract_testcases/solana/yul/yul_switch.sol:9:13-11:14"]
	yul_assignment_32 [label="yul assignment\ntests/contract_testcases/solana/yul/yul_switch.sol:10:17-23"]
	solidity_variable_33 [label="solidity variable: y\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:10:17-18"]
	yul_number_literal_34 [label="uint256 literal: 5\ntests/contract_testcases/solana/yul/yul_switch.sol:10:22-23"]
	yul_assignment_35 [label="yul assignment\ntests/contract_testcases/solana/yul/yul_switch.sol:13:13-27"]
	solidity_variable_36 [label="solidity variable: y\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:13:13-14"]
	yul_builtin_call_37 [label="yul builtin call 'sub'\ntests/contract_testcases/solana/yul/yul_switch.sol:13:18-27"]
	solidity_variable_38 [label="solidity variable: y\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:13:22-23"]
	yul_number_literal_39 [label="uint256 literal: 1\ntests/contract_testcases/solana/yul/yul_switch.sol:13:25-26"]
	return [label="return\ntests/contract_testcases/solana/yul/yul_switch.sol:16:9-17"]
	variable [label="variable: y\nuint256\ntests/contract_testcases/solana/yul/yul_switch.sol:16:16-17"]
	diagnostic [label="found contract 'testTypes'\nlevel Debug\ntests/contract_testcases/solana/yul/yul_switch.sol:1:1-18:2"]
	contracts -> contract
	contract -> var [label="variable"]
	contract -> testAsm [label="function"]
	testAsm -> parameters [label="parameters"]
	testAsm -> returns [label="returns"]
	testAsm -> var_decl [label="body"]
	var_decl -> number_literal [label="init"]
	var_decl -> inline_assembly [label="next"]
	inline_assembly -> switch [label="statement #0"]
	switch -> yul_suffix_access [label="cond"]
	yul_suffix_access -> solidity_variable [label="parent"]
	switch -> case [label="case #0"]
	case -> yul_number_literal [label="case-condition"]
	case -> assembly_block [label="case block"]
	assembly_block -> yul_assignment [label="statement #0"]
	yul_assignment -> solidity_variable_16 [label="rhs #0"]
	yul_assignment -> yul_builtin_call [label="lhs"]
	yul_builtin_call -> yul_suffix_access_18 [label="arg #0"]
	yul_suffix_access_18 -> storage_var [label="parent"]
	yul_builtin_call -> yul_number_literal_20 [label="arg #1"]
	switch -> case_21 [label="case #1"]
	case_21 -> yul_number_literal_22 [label="case-condition"]
	case_21 -> assembly_block_23 [label="case block"]
	assembly_block_23 -> yul_assignment_24 [label="statement #0"]
	yul_assignment_24 -> solidity_variable_25 [label="rhs #0"]
	yul_assignment_24 -> yul_builtin_call_26 [label="lhs"]
	yul_builtin_call_26 -> yul_suffix_access_27 [label="arg #0"]
	yul_suffix_access_27 -> storage_var_28 [label="parent"]
	yul_builtin_call_26 -> yul_number_literal_29 [label="arg #1"]
	switch -> default [label="default"]
	default -> assembly_block_31 [label="default block"]
	assembly_block_31 -> yul_assignment_32 [label="statement #0"]
	yul_assignment_32 -> solidity_variable_33 [label="rhs #0"]
	yul_assignment_32 -> yul_number_literal_34 [label="lhs"]
	switch -> yul_assignment_35 [label="statement #1"]
	yul_assignment_35 -> solidity_variable_36 [label="rhs #0"]
	yul_assignment_35 -> yul_builtin_call_37 [label="lhs"]
	yul_builtin_call_37 -> solidity_variable_38 [label="arg #0"]
	yul_builtin_call_37 -> yul_number_literal_39 [label="arg #1"]
	inline_assembly -> return [label="next"]
	return -> variable [label="expr"]
	diagnostics -> diagnostic [label="Debug"]
}
