@typecheck_method(a=IR, ascending=IR, on_key=bool)
def __init__(self, a, ascending, on_key):
    super().__init__(a, ascending)
    self.a = a
    self.ascending = ascending
    self.on_key = on_key
@typecheck_method(a=IR, ascending=IR, on_key=bool)
def __init__(self, a, ascending, on_key):
    super().__init__(a, ascending)
    self.a = a
    self.ascending = ascending
    self.on_key = on_key