Improve abstract method