hacky error handling