...
type debug = {fn: 'a. ('a, unit, string, unit) format4 -> 'a }[@@unboxed];;
let udebug = {fn=debug}
let give_fn () = Some udebug
| Some {fn} -> fn "fn"; fn "fn param: %s" param