So with key = "0", we have possible keys of 1, 2, or 15. If it isn't a key, we need to keep the value. If it is a key, we still need to keep the value, but also add in the values of the hash at that key.
I almost forgot, the values of the item, if it is a key, also can be keys themselves, and need to be treated in the same way.