The point of doing `Hash.new(0)` is that it returns 0 for unknown keys, thus we only have to set those for which we have a non-zero va