doing exception support ... change ret flag