added modulus
final update