forgot to remove abstract when abstract class was refactored into interface