modification of constructor