added defaultConstructor