MOD = 10**9 + 7 K, N, M = map(int, input().split()) a = list(map(int, input().split())) c = list(map(int, input().split())) # 预计算a序列的前N项 for i in range(K, N): val = 0 for k in range(1, K+1): if i - k >= 0: val += c[k-1] * a[i - k] val %= MOD a.append(val % MOD) x = [0] * N for _ in range(M): l, r = map(int, input().split()) for i in range(l, r): if i - l >= len(a): break x[i] += a[i - l] x[i] %= MOD for num in x: print(num % MOD)