added exception handles on create methods