anchor.diff:                  prior = (let pr = defaultPrior prior in if pr = nonInformative then None else Some pr)
                   }, 
               Array.append pvalues values)
  +    /// Add a scalar parameter.
  +    /// To fix the parameter add isFixed=true optional argument which sets the delay to maxint. By default the delay is 0.
       member x.Add(name:string, value:float, lower:float, upper:float, ?isFixed, ?isLog, ?prior) =
           // by default, the parameter is a scalar value
           x.Add(name, [|value|], lower, upper, (if defaultArg isFixed false then System.Int32.MaxValue else 0), defaultLog isLog, defaultPrior prior)
  +    /// Add a scalar parameter with fixed value
  +    member x.Add(name:string, value:float, ?isLog, ?prior) = x.Add(name, [|value|], value, value, System.Int32.MaxValue, defaultLog isLog, defaultPrior prior)
  +    /// Add a scalar parameter with a specific delay.
       member x.Add(name, value, lower, upper, delay, ?isLog, ?prior) =
           // by default, the parameter is a scalar value
           x.Add(name, [|value|], lower, upper, delay, defaultLog isLog, defaultPrior prior)
  +    /// Add a vector parameter by the vector size and a value of all elements of the vector.
  +    /// To fix the parameter add isFixed=true optional argument which sets the delay to maxint. By default the delay is 0.
       member x.Add(name, size, value, lower, upper, ?isFixed, ?isLog, ?prior) = 
           if size<1 then
               invalidArg "size" "parameter size must be 1 or greater."
           x.Add(name, Array.create size value, lower, upper, (if defaultArg isFixed false then System.Int32.MaxValue else 0), defaultLog isLog, defaultPrior prior)
  +    /// Add a vector parameter by the vector size and a value of all elements of the vector with a specific delay.
       member x.Add(name, size, value, lower, upper, delay, ?isLog, ?prior) = 
           if size<1 then
               invalidArg "size" "parameter size must be 1 or greater."
  
positive.code:                 [for i in 0..nalt-1 -> alterable.[shuffle.[i]]]
  
          // change parameter values, i.e. make the 'jump'
          let mutable logfactor = 0.
          for i in alt do
              let old = values.[i]
  
negative.code:                 logfactor <- logfactor + add
              else
                  values.[i] <- old + add
          // Jumps out of parameter bounds count as iterations and are automatically rejected
          // as discussed in https://darrenjw.wordpress.com/2012/06/04/metropolis-hastings-mcmc-when-the-proposal-and-target-have-differing-support/.
          let inbounds = alt |> List.forall (fun i ->
              values.[i]>=pall.[i].lower && values.[i]<=pall.[i].upper)
          // calc new lnlike
  