pub fn and4( a: impl Future<Output = bool> + Send, b: impl Future<Output = bool> + Send, c: impl Future<Output = bool> + Send, d: impl Future<Output = bool> + Send, ) -> impl Future<Output = bool> + Send