`sig val synchronize : ?lock:Mutex.t -> ('a -> 'b) -> 'a -> 'b val make : unit -> BatConcurrent.lock module DebugMutex : sig type t val create : unit -> BatMutex.DebugMutex.t val lock : BatMutex.DebugMutex.t -> unit val try_lock : BatMutex.DebugMutex.t -> bool val unlock : BatMutex.DebugMutex.t -> unit val synchronize : ?lock:BatMutex.DebugMutex.t -> ('a -> 'b) -> 'a -> 'b val make : unit -> BatConcurrent.lock end end`