throw errors instead of sending them as a result. So that they can be caught on a higher level