(self, a, e)
:param a: IntegersModuloPrimeElement
        :param e: int
        :return: IntegersModuloPrimeElement
def pow(self, a, e):
        """

        :param a: IntegersModuloPrimeElement
        :param e: int
        :return: IntegersModuloPrimeElement
        """
        if type(a) != IntegersModuloPrimeElement or type(e) != int:
            raise TypeError("Power only supports IntegersModuloPrimeElement to the int's")
        if e == 0:
            return self.mul_identity
        elif e < 0:
            raise ValueError("Exponents in power must be non-negative")
        else:
            return IntegersModuloPrimeElement(powmod(a.val, e, self.mod))
def pow ( self , a , e ) : if type ( a ) != IntegersModuloPrimeElement or type ( e ) != int : raise TypeError ( "Power only supports IntegersModuloPrimeElement to the int's" ) if e == 0 : return self . mul_identity elif e < 0 : raise ValueError ( "Exponents in power must be non-negative" ) else : return IntegersModuloPrimeElement ( powmod ( a . val , e , self . mod ) )