Implement abstract class