Add fallbacks

Well, can `additions` be anything other than a "record" type of object, such at any unintended properties introduce subtle errors making this a bug-farm (e.g. could it ever be an array)? And is it subtle enough that no shenanigans would be exposed directly, but instead quietly show up due to side-effects?

Separately, can `data[i]` on the next line every be falsily falsy, e.g. an intentional 0, empty string, etc. Should the be a more explicit guard than `!data[i]`?