@verb #144:"exp_mod" this none this rxdo #55 @program #144:"exp_mod" this none this ":exp_mod(a, n, m) => a^n mod m" {a, n, m} = args dn = decode_binary(n, 1) l = (length(dn) - 1) * 8 + toint(ceil(log(tofloat(dn[1])) / log(2.0))) p = a i = 1 while (l > 1) l = l - 1 p = this:mod(this:product(p, p), m) i = i * 2 if (this:bit_set(n, l)) p = this:mod(this:product(p, a), m) i = i + 1 endif $command_utils:suspend_if_needed() endwhile return p "This verb previously owned by manta (#7165), and chowned to $slacker upon dewizarding (Sat Aug 17 14:50:06 2002 MDT)." "Last modified by Dax (#789) on Sat Aug 17 14:50:06 2002 MDT." .