updates constructor