code: def crt(self, mp, mq):
          
          u = (mq - mp) * self.p_inverse % self.q
          return mp + (u * self.p)
docs: The Chinese Remainder Theorem as needed for decryption. Returns the solution modulo n=pq.
  
          Args:
             mp(int): the solution modulo p.
             mq(int): the solution modulo q.