use StandardError in place of Exception