added power and modulus