use abstract class for data class