Is this the correct handling in the case !match? Why do you not need to assert match?