pub fn grad<'a, K, IN, OUT, F>( func: F ) -> impl Fn(IN) -> IN::Gradient + Clone + 'awhere F: Func<K, IN, OUT> + Clone + 'a, IN: Value, OUT: Value,