from abc import ABC, abstractmethod class Solver(ABC): @abstractmethod def __init__(self, puzzle_input: str): ... @abstractmethod def solve_p1(self) -> int: ... @abstractmethod def solve_p2(self) -> int: ...