added some kind of exception handling