from abc import ABC, abstractmethod class Implementation(ABC): """ The Implementation defines the interface for all implementation classes. It doesn't have to match the Abstraction's interface. In fact, the two interfaces can be entirely different. Typically the Implementation interface provides only primitive operations, while the Abstraction defines higher-level operations based on those primitives. """ @abstractmethod def operation_implementation(self) -> str: pass