let bind x f =     Deferred.bind x (function       | `Error e -> Deferred.return (`Error e)       | `Ok o -> f o)