anchor.diff:          "@Product.CustomActions@", Seq.fold(fun acc elem -> acc + elem.ToString()) "" parameters.CustomActions
           "@Product.ActionSequences@", Seq.fold(fun acc elem -> acc + elem.ToString()) "" parameters.ActionSequences
           "@Build.number@", parameters.BuildNumber]
  +    let customReplacements = parameters.CustomReplacements |> Seq.map (fun (key, value) -> ((sprintf "@Custom.%s@" key), value)) |> List.ofSeq
  +    let replacements = replacements @ customReplacements
       processTemplates replacements wixScript
   
   /// Generates a feature based on the given parameters, use toString on it when embedding it
  
positive.code:         "@Product.Features@", parameters.Features
          "@Product.CustomActions@", parameters.CustomActions
          "@Product.ActionSequences@", parameters.ActionSequences
          "@Build.number@", parameters.BuildNumber]
      processTemplates replacements wixScript
      
  /// Takes path where script files reside and sets all parameters as defined
  
negative.code:         Features = []
          CustomActions = []
          ActionSequences = []
          CustomReplacements = []
      }
  
  /// Generates WiX Template with specified file name (you can prepend location too)
  