anchor.diff:      | App (_, t,_,_) -> BU.format1 "App %s" (Print.term_to_string t)
       | Meta (m,_) -> "Meta"
       | Let  _ -> "Let"
  -    | Steps (_, _, _) -> "Steps"
  +    | Cfg _ -> "Cfg"
       | Debug (t, _) -> BU.format1 "Debug %s" (Print.term_to_string t)
       // | _ -> "Match"
   
  
positive.code:  | App      of env * term * aqual * Range.range
   | Meta     of S.metadata * Range.range
   | Let      of env * binders * letbinding * Range.range
   | Steps    of steps * list<primitive_step> * list<Env.delta_level>
   | Debug    of term * BU.time
  type stack = list<stack_elt>
  
  
negative.code:     (* the Meta_monadic marker and reconstruct the computation after      *)
      (* normalization.                                                     *)
      let t = norm cfg env [] t in
      let stack = (Cfg cfg)::stack in
      let cfg =
        if cfg.steps |> List.contains PureSubtermsWithinComputations
        then
  