added recursive modulus