Is returning `default` if missing what we want to do here? Seems different than the original code, and isn't what happens in the put FSM changes.