added final initializers