pub fn choose_random_map_subset<G: Gen, T, U>(
    source: &HashMap<T, U, RandomState>,
    gen: &mut G
) -> HashMap<T, U>where
    T: Clone + PartialEq + Eq + Hash,
    U: Clone,