fn walk<F: Fn(&str, &mut Value) -> Result<()>>( path: &str, value: &mut Value, transform: &F) -> Result<()>