maybe speed up your Python.
Thanks for the input and insight , kang == jump point , enlighten me please.
It means that you''ll get the exception that you have same X when doing Group.add() if the kangaroo is on the same (or opposite) point that is the deterministic next jump point, which can (and will) happen if the range that is searched contains the jump positions themselves.
But looking fast over your code, it's not even doing an actual Kangaroo algo. it does EC point multiplications over subranges, so it's actually extremely inefficient. It looks more like a brute force attempt.