pub async fn query<'a, F, T, U>( tag: &'static str, query: &'a str, params: &'a [Value<'_>], f: F ) -> Result<T>where F: FnOnce() -> U + 'a, U: Future<Output = Result<T>>,