Shouldn't this use the circular modulus method?