dealing with creating constructors