class Foo: def __new__(cls, a: int) -> 'Foo': raise NotImplementedError() def __init__(self, a: str): # error pass