overloaded constuctor made