perfer: ```python class MyClass(ABC) def __getitem__(self, x): return self.getitem(x) @abstractmethod def getitem(self, x): ... ``` than: ```python class MyClass(ABC) @abstractmethod def __getitem__(self, x): ... ```