Thanks, I'll push a commit to fix this.

Looking at this again, it looks a bit strange to have another `apply()` function with a different pattern just to do error handling. I guess it's probably more efficient to match any n and test for `isinstance(n, Integer)` instead. I'll push something to change this (unless you'd prefer to keep the patterns the way they are).