added constructors