pub fn map<F, Input, Output>(f: F) -> Map<F, Input>where F: Fn(Input) -> Output + Send + Sync, Input: Send + Sync, Output: Send + Sync,