make views work with abstract class