sig
  val check_invariant : bool ref
  val show_messages : bool ref
  val debug :
    ('-> unit) ->
    Core.Std.String.t ->
    Core.Std.String.t ->
    'Core.Std.List.t ->
    '->
    ('-> Sexplib.Sexp.t) -> ('-> Sexplib.Sexp.t) -> (unit -> 'c) -> 'c
end