digraph block { N0[label="entry"]; N1[label="exit"]; N2[label="expr 8"]; N3[label="local x"]; N4[label="stmt let x = 8;"]; N5[label="local _y"]; N6[label="stmt let _y;"]; N7[label="expr x"]; N8[label="expr 88"]; N9[label="expr x > 88"]; N10[label="expr 888"]; N11[label="expr _y"]; N12[label="expr _y = 888"]; N13[label="stmt _y = 888;"]; N14[label="block { _y = 888; }"]; N15[label="expr if x > 88 { _y = 888; }"]; N16[label="block { let x = 8; let _y; if x > 88 { _y = 888; } }"]; N0 -> N2; N2 -> N3; N3 -> N4; N4 -> N5; N5 -> N6; N6 -> N7; N7 -> N8; N8 -> N9; N9 -> N10; N10 -> N11; N11 -> N12; N12 -> N13; N13 -> N14; N9 -> N15; N14 -> N15; N15 -> N16; N16 -> N1; }