sig
  type t = { normal_mean : float; normal_sd : float; }
  type elt = float
  val sample : ?rng:Gsl.Rng.t -> size:int -> t -> elt array
  val cumulative_probability : t -> x:elt -> float
  val density : t -> x:elt -> float
  val quantile : t -> p:float -> elt
  val mean : t -> float
  val variance : t -> float
  val skewness : t -> float
  val kurtosis : t -> float
  val create : mean:float -> sd:float -> Distributions.Normal.t
  val standard : Distributions.Normal.t
  val mle : float array -> Distributions.Normal.t
end