pub fn size_map<K, V, M: Map<K, V>>(
    m: &M,
    tag: u32,
    ktag: u32,
    vtag: u32,
    stack: &mut SizeStack,
    ksize: fn(_: &K, _: u32, _: &mut SizeStack) -> usize,
    vsize: fn(_: &V, _: u32, _: &mut SizeStack) -> usize
) -> usize