let handler ?(cond=(fun () -> true)) callback =
  { cond = cond ; cback = callback }