anchor.diff:          // TODO @(septract) print command properly 
           let cmdprint = zterm.SymBool.Cmd 
                          |> (Core.Expr.Pretty.printBoolExpr (printSymGrass printMarkedVarGrass))
  -        vsep [ String "procedure" <+> String name <+> (varprint |> parened) 
  -               // String "requires" 
  -               //(printConstrGrass (String "requires ") zterm.SymBool.WPre) 
  -               //(printConstrGrass (String "ensures  ") zterm.SymBool.Goal) 
  +        vsep [ String "procedure" <+> String name 
  +               varprint |> Indent |> parened 
                  String "requires" 
                  Indent wpreprint 
                  String "ensures" 
                  Indent goalprint
  -               cmdprint 
  -                    |> ssurround "/*" "*/" 
  -                    |> Indent |> braced 
  +               cmdprint |> ssurround "/*" "*/" |> Indent |> braced 
                ]  
   
       /// Print all the Grasshopper queries that haven't been eliminated by Z3.      
  
positive.code:         let fails = extractFailures model 
          Map.toSeq fails 
          |> Seq.map (fun (name,term) -> printZTermGrass model.SharedVars name term) 
          |> vsep
  
      /// Print a Grasshopper error (not implemented yet)
      let printGrassError e = failwith "not implemented yet" 
  
negative.code: 
      /// Get the set of accessed variables. 
      let findVarsGrass (zterm : Backends.Z3.Types.ZTerm) : seq<MarkedVar> = 
          BAnd [zterm.SymBool.WPre; zterm.SymBool.Goal; zterm.SymBool.Cmd] 
          |> findMarkedVars (tliftToBoolSrc (tliftToExprDest collectSymMarkedVars)) 
          |> lift (Set.map valueOf >> Set.toSeq) 
          |> returnOrFail
  
      /// Print a single Grasshopper query from a ZTerm 
      let printZTermGrass (svars : VarMap) 
  