digraph CFG {
  node [fontname="Helvetica"];
  n711 [label="START", shape=ellipse, style=filled, color=gray];
  n711 -> n763;
  n763 [label="2", shape=box];
  n763 -> n764;
  n764 [label="3", shape=box];
  n764 -> n765;
  n765 [label="CALL f", shape=box, style=filled, color=orange];
  n765 -> n713;
  n765 -> n767;
  n713 [label="START f(a, b)", shape=ellipse, style=filled, color=green];
  n713 -> n718;
  n718 [label="a", shape=box];
  n718 -> n719;
  n719 [label="0", shape=box];
  n719 -> n720;
  n720 [label="a == 0", shape=box];
  n720 -> n721;
  n721 [label="<?>", shape=diamond];
  n721 -> n725 [label="T"];
  n721 -> n736 [label="F"];
  n725 [label="2", shape=box];
  n725 -> n726;
  n726 [label="b", shape=box];
  n726 -> n727;
  n727 [label="2 + b", shape=box];
  n727 -> n714;
  n714 [label="END f(a, b)", shape=ellipse, style=filled, color=green];
  n714 -> n761;
  n714 -> n767;
  n761 [label="RET f", shape=box, style=filled, color=orange];
  n761 -> n762;
  n762 [label="c * f((c - 1),d)", shape=box];
  n762 -> n729;
  n729 [label="END g(a, c)", shape=ellipse, style=filled, color=green];
  n729 -> n741;
  n729 -> n773;
  n741 [label="RET g", shape=box, style=filled, color=orange];
  n741 -> n742;
  n742 [label="2 + g(a,b)", shape=box];
  n742 -> n714;
  n773 [label="RET g", shape=box, style=filled, color=orange];
  n773 -> n712;
  n712 [label="END", shape=ellipse, style=filled, color=gray];
  n767 [label="RET f", shape=box, style=filled, color=orange];
  n767 -> n769;
  n769 [label="3", shape=box];
  n769 -> n770;
  n770 [label="2", shape=box];
  n770 -> n771;
  n771 [label="CALL g", shape=box, style=filled, color=orange];
  n771 -> n728;
  n771 -> n773;
  n728 [label="START g(a, c)", shape=ellipse, style=filled, color=green];
  n728 -> n731;
  n728 -> n744;
  n731 [label="a", shape=box];
  n731 -> n732;
  n732 [label="c", shape=box];
  n732 -> n733;
  n733 [label="a + c", shape=box];
  n733 -> n734;
  n734 [label="b", shape=box];
  n734 -> n735;
  n735 [label="(a + c) + b", shape=box];
  n735 -> n729;
  n744 [label="c", shape=box];
  n744 -> n745;
  n745 [label="0", shape=box];
  n745 -> n746;
  n746 [label="c == 0", shape=box];
  n746 -> n747;
  n747 [label="<?>", shape=diamond];
  n747 -> n751 [label="T"];
  n747 -> n754 [label="F"];
  n751 [label="1", shape=box];
  n751 -> n752;
  n752 [label="d", shape=box];
  n752 -> n753;
  n753 [label="1 + d", shape=box];
  n753 -> n729;
  n754 [label="c", shape=box];
  n754 -> n755;
  n755 [label="c", shape=box];
  n755 -> n756;
  n756 [label="1", shape=box];
  n756 -> n757;
  n757 [label="c - 1", shape=box];
  n757 -> n758;
  n758 [label="d", shape=box];
  n758 -> n759;
  n759 [label="CALL f", shape=box, style=filled, color=orange];
  n759 -> n713;
  n759 -> n761;
  n736 [label="2", shape=box];
  n736 -> n737;
  n737 [label="a", shape=box];
  n737 -> n738;
  n738 [label="b", shape=box];
  n738 -> n739;
  n739 [label="CALL g", shape=box, style=filled, color=orange];
  n739 -> n728;
  n739 -> n741;
}