digraph jobStatus {

  graph [splines="spline" mclimit=1.0 ratio=auto rankdir=LR]

  created [shape=box];
  waiting;
  paused;
  ready;
  running;
  cancelled;
  completed;
  removed [shape=box];
  created -> waiting [weight=100.0];
  waiting -> ready [weight=100.0];
  ready -> running [weight=100.0];
  running -> completed [weight=100.0];
  completed -> removed [weight=100.0];
  running -> cancelled [label=".cancel()"];
  ready -> cancelled [label=".cancel()"];
  waiting -> cancelled [label=".cancel()"];
  paused -> cancelled [label=".cancel()"];
  cancelled -> waiting [label=".restart()"];
  cancelled -> removed [label=".remove()"];
}
