fn change_known_at<T>( path: &Path, change: impl FnOnce(&mut Vec<KnownCard>) -> T, ) -> Result<T, String>