add empty constructor to fix InstantiationException