exception handling in constructor