Type should be an abstract class