Do not throw strings, throw Errors instead