`sig type base_u type u type t = private BatBounded.S.u val bounds : BatBounded.S.base_u BatBounded.bound_t * BatBounded.S.base_u BatBounded.bound_t val make : BatBounded.S.base_u -> BatBounded.S.t external extract : BatBounded.S.t -> BatBounded.S.u = "%identity" val map : (BatBounded.S.base_u -> BatBounded.S.base_u) -> BatBounded.S.t -> BatBounded.S.t option val map2 : (BatBounded.S.base_u -> BatBounded.S.base_u -> BatBounded.S.base_u) -> BatBounded.S.t -> BatBounded.S.t -> BatBounded.S.t option val map_exn : (BatBounded.S.base_u -> BatBounded.S.base_u) -> BatBounded.S.t -> BatBounded.S.t val map2_exn : (BatBounded.S.base_u -> BatBounded.S.base_u -> BatBounded.S.base_u) -> BatBounded.S.t -> BatBounded.S.t -> BatBounded.S.t end`