digraph cfg {
	start -> while [label = T];
    while -> "if (Y)" [label = "T"];
    while -> D [label = "F"];
	D -> end;
    "if (Y)" -> "if (Z)" [label=T];
    "if (Y)" -> C [label=F];
    "if (Z)" -> A [label=T];
    "if (Z)" -> B [label=F];
	//node [color="red"];
    A -> break1;
    B -> break2;
	break1 -> D [label = T];
	break2 -> D [label = T];
	while [label="while (X)"];
    break1 [label = "break"];
    break2 [label = "break"];
	break1 -> B [style=dashed, label = F];
	break2 -> C [style=dashed, label = F];
	C -> while;
    start -> end [label = F, style = dashed];
}