We can always come up with better error messages later as well