throw error instead of swallow