digraph G {
  size = "8.5,11";
  rankdir = TB;
  node[shape=circle];
  "q4";
  "q1";
  "q2";
  "q3";
  trans1 [shape=record,height=0,width=0,label="o"];
  trans1 -> "q1";
  "q3" -> "q3" [label="s"];
  "q1" -> "q3" [label="s"];
  "q4" -> "q3" [label="s"];
  "q2" -> "q3" [label="s"];
  trans2 [shape=record,height=0,width=0,label="nil"];
  trans2 -> "q2";
  trans3 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q2" -> trans3:port1;
  "q3" -> trans3:port2;
  trans3:out -> "q2";
  trans4 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q4" -> trans4:port1;
  "q3" -> trans4:port2;
  trans4:out -> "q2";
  trans5 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q1" -> trans5:port1;
  "q1" -> trans5:port2;
  trans5:out -> "q2";
  trans6 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q3" -> trans6:port1;
  "q3" -> trans6:port2;
  trans6:out -> "q2";
  trans7 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q3" -> trans7:port1;
  "q4" -> trans7:port2;
  trans7:out -> "q2";
  trans8 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q3" -> trans8:port1;
  "q2" -> trans8:port2;
  trans8:out -> "q2";
  trans9 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q4" -> trans9:port1;
  "q2" -> trans9:port2;
  trans9:out -> "q2";
  trans10 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q2" -> trans10:port1;
  "q4" -> trans10:port2;
  trans10:out -> "q2";
  trans11 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q4" -> trans11:port1;
  "q1" -> trans11:port2;
  trans11:out -> "q2";
  trans12 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q1" -> trans12:port1;
  "q2" -> trans12:port2;
  trans12:out -> "q2";
  trans13 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q1" -> trans13:port1;
  "q4" -> trans13:port2;
  trans13:out -> "q2";
  trans14 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q2" -> trans14:port1;
  "q1" -> trans14:port2;
  trans14:out -> "q2";
  trans15 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q4" -> trans15:port1;
  "q4" -> trans15:port2;
  trans15:out -> "q2";
  trans16 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q2" -> trans16:port1;
  "q2" -> trans16:port2;
  trans16:out -> "q2";
  trans17 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q3" -> trans17:port1;
  "q1" -> trans17:port2;
  trans17:out -> "q2";
  trans18 [shape=record,height=0,width=0,label="<out>cons|<port1> |<port2> "];
  "q1" -> trans18:port1;
  "q3" -> trans18:port2;
  trans18:out -> "q2";
}
