It duplicates too much of code, please introduce new method in the parent class and override them