throw Exceoption on wrong ctor argument