let observe f =
    Input.observe (fun () -> bwd (f ()))