Change to abstract class