anchor.diff:    let id = solution_component.Attributes.["objectid"] :?> Guid
     match typeString with
     // Remark, what does fake workflow mean?
  -    | Some "Workflow" when not (List.contains id workflows) -> printfn " Skipping 'fake' workflow"
  +    | Some "Workflow" when not (List.contains id workflows) -> log.Verbose " Skipping 'fake' workflow"
       | _ ->
         match typeString with
  -        | None -> printfn "Adding thing (%i) to solution" type_
  -        | Some s -> printfn "Adding %s to solution" s
  +        | None -> log.Verbose "Adding thing (%i) to solution" type_
  +        | Some s -> log.Verbose "Adding %s to solution" s
         let req = AddSolutionComponentRequest ()
         req.ComponentType <- type_;
         req.ComponentId <- id;
  
positive.code:   sw.ToString()
  
  let diff (proxy: IOrganizationService) sol_id (dev_customizations: string) (prod_customizations: string) output =
    printfn "Parsing DEV customizations";
    let dev_doc = XmlDocument ()
    dev_doc.Load (dev_customizations + "/customizations.xml");
    printfn "Parsing PROD customizations";
    let prod_doc = XmlDocument ()
    prod_doc.Load (prod_customizations + "/customizations.xml");
    printfn "Calculating diff";
    elim proxy sol_id dev_customizations prod_customizations dev_doc prod_doc output |> ignore;
    // printfn "Saving";
    // File.WriteAllText (__SOURCE_DIRECTORY__ + @"\diff.xml", to_string dev_doc);
  
  let export file_location complete_solution_name temporary_solution_name (dev:DG.Daxif.Environment) (prod:DG.Daxif.Environment) = 
  
negative.code:     // Diff the two exported solutions, add to [partial solution]
      diff dev_proxy temporary_solution_name dev_sol prod_sol Diff;
      // Export [partial solution] from DEV
      log.Verbose "Exporting solution '%s' from %s" temporary_solution_name dev.name;
      let temp_sol = download dev (file_location + "/") temporary_solution_name 15
      // Delete [partial solution] on DEV
      log.Verbose "Deleting solution '%s'" temporary_solution_name;
      dev_proxy.Delete("solution", id);
      temporary_solution_name
    with e -> 
      // Delete [partial solution] on DEV
      log.Verbose "Deleting solution '%s'" temporary_solution_name;
      dev_proxy.Delete("solution", id);
      failwith e.Message; 
        
  