sig
  exception Error of string * string
  val compress :
    ?level:int ->
    ?header:bool -> (bytes -> int) -> (bytes -> int -> unit) -> unit
  val uncompress :
    ?header:bool -> (bytes -> int) -> (bytes -> int -> unit) -> unit
end