anchor.diff:    | QForall (bs, trigger, e1)
     | QExists (bs, trigger, e1) ->
         prefix2
  -        (soft_surround 2 0 (p_quantifier e ^^ space) (p_binders true bs) dot)
  +        (soft_surround 2 0 (p_quantifier e ^^ space) (p_binders true bs []) dot)
           (p_trigger trigger ^^ p_noSeqTerm ps pb e1)
     | _ -> p_simpleTerm ps pb e
   
  
positive.code:     p_effectDefinition lid bs t eff_decls
  
  and p_effectRedefinition uid bs t =
      surround 2 1 (p_uident uid) (p_binders true bs) (prefix2 equals (p_simpleTerm false false t))
  
  and p_effectDefinition uid bs t eff_decls =
    braces_with_nesting (
      group (surround 2 1 (p_uident uid) (p_binders true bs)  (prefix2 colon (p_typ false false t))) ^/^
      prefix2 (str "with") (separate_break_map_last semi p_effectDecl eff_decls)
      )
  
  
negative.code:       str "#light \"off\""
  
  (* TODO : needs to take the F# specific type instantiation *)
  and p_typars bs suffix = p_binders true bs suffix
  
  and p_fsdocTypeDeclPairs kw (typedecl, fsdoc_opt) =
    let decl, body = p_typeDecl (kw, fsdoc_opt) typedecl in
    decl ^^ (body ())
  
  and p_typeDecl pre = function
    | TyconAbstract (lid, bs, typ_opt) ->
      let empty' : unit -> document = fun () -> empty in
      p_typeDeclPrefix pre lid bs typ_opt, empty'
    | TyconAbbrev (lid, bs, typ_opt, t) ->
      let f () = jump2 (p_typ false false t) in
      p_typeDeclPrefix pre lid bs typ_opt, f
    | TyconRecord (lid, bs, typ_opt, record_field_decls) ->
      let p_recordFieldAndComments ps (lid, t, doc_opt) =
        with_comment (p_recordFieldDecl ps) (lid, t, doc_opt) (extend_to_end_of_line t.range)
      in
      let p_fields () =
          space ^^ braces_with_nesting (
            separate_map_last (semi ^^ break1) p_recordFieldAndComments record_field_decls)
      in
      p_typeDeclPrefix pre lid bs typ_opt, p_fields
    | TyconVariant (lid, bs, typ_opt, ct_decls) ->
      let p_constructorBranchAndComments (uid, t_opt, doc_opt, use_of) =
          let range = extend_to_end_of_line (dflt uid.idRange (map_opt t_opt (fun t -> t.range))) in
  