L, R, M = map(int, input().split()) f = [0] * (M + 5) ff = [0] * (M + 5) f[0] = ff[0] = 1 for i in range(M): f[i + 1] = f[i] * (i + 1) % M for i in range(M): ff[i + 1] = ff[i] * f[i + 1] % M ans = 0 for i in range(L, min(R + 1, M + 1)): ans += ff[i] ans %= M print(ans)