// GetOrSetMap looks up k in m, a two-level map, and returns the result. If it's not present,
// it uses `make` to allocate new second-level map and sets that in the first map, then returns it.
if m2, ok := m[k]; ok {
return m2
}