added another set of constructors