== init =====
init =>> a_X.prep   (*  :  *)
  a_X.prepO =>> a.upd   (*  :  *)
== step =====
step =>> b_X.prep   (*  :  *)
  b_X.prepO =>> stepO   (*  :  *)
