I usually raise NotImplemented for methods that are abstract. I didn't know @abstractmethod was a thing. Maybe it does that under the hood?