Implement abstract methods