sig
  type 'a t
  val gen :
    (?size:int -> Random.State.t -> 'a) ->
    ?size:int -> Random.State.t -> 'Reins.Types.Poly.Arbitrary.t
  val to_string : ('-> string) -> 'Reins.Types.Poly.Arbitrary.t -> string
end