constructors updated