sig
  val run : 'Tree.t -> 'Tree.t list -> ('c, 'a, 'b) Mtt.mtt -> 'Tree.t
end