Посмотрите на вопрос здесь для ответа на ваш вопрос.
В основном (X * Y) % Z == ((X % Z) * (Y % Z)) % Z
.
Итак, в качестве отправной точки, 2^301 % 77 == ((2^150 % 77) * (2^151 % 77)) % 77
. Продолжайте разбивать, пока не получите разумные числа, затем рекомбинируйте. Вы сможете сохранять свои номера в разумных пределах на протяжении всего пути.