`sig
module type S = S
module type S1 = S1
module type S1_permissions = S1_permissions
module type Indexable = Indexable
module type Indexable1 = Indexable1
module Make :
functor (T : Indexable) ->
sig
val binary_search : (T.t, T.elt) binary_search
val binary_search_segmented : (T.t, T.elt) binary_search_segmented
end
module Make1 :
functor (T : Indexable1) ->
sig
val binary_search : ('a T.t, 'a) binary_search
val binary_search_segmented : ('a T.t, 'a) binary_search_segmented
end
end`