unnecessarily verbose error message, but oh well