less aggresive use of exceptions bz we need to assure that we dont let any unfree resource