empty constructor to allow serialization