implement empty constructor