added two constructors