#!/usr/bin/python from operator import mod, sub def eea(a,b): v1 = [a,1,0] v2 = [b,0,1] while v2[0]<>0: p = v1[0]//v2[0] v2, v1 = map(sub,v1,[p*vi for vi in v2]), v2 return v1 def minv(m,k): v = eea(m,k) if v[1]>=0: return v[1] else: return k+v[1] def mdiv(dor, dend, rad): inv=minv(dend, rad) return mod(inv*dor, rad) class exp: def __init__(self, trg): self.trg=trg self.totx=1 self.totl=0 self.dct={} self.cnt=0 self.loc=1 def stp(self): while self.loc