added new constructors