sig
  module type T =
    sig
      type t
      val default : Strat.T.t
      val grow : Strat.T.t -> (int -> unit) -> int -> unit
      val shrink : Strat.T.t -> (int -> unit) -> int -> int -> unit
    end
end