keep original exception when throwing a new exception