#include <bits/stdc++.h>
using namespace std;
const int maxx = 1e5 + 100;
long long t[maxx];
long long mami(long long l, long long r, long long n) {
  if (n >= l && n <= r) return n;
  if (n < l) return l;
  return r;
}
int main() {
  long long x;
  scanf("%lld", &x);
  int n, q;
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%lld", &t[i]);
  }
  long long L = 0, R = x;
  scanf("%d", &q);
  while (q--) {
    long long tt, a;
    scanf("%lld%lld", &tt, &a);
    int p = -1, k = 1;
    long long d, temp = 0, q = 0;
    while (tt >= t[k] && k <= n) {
      d = p * (t[k] - temp);
      L = mami(0, x, L + d);
      R = mami(0, x, R + d);
      q += d;
      p = p * (-1);
      temp = t[k];
      k++;
    }
    long long s = tt - temp;
    long long ans = mami(L, R, a + q);
    ans = mami(0, x, ans + s * p);
    printf("%lld\n", ans);
  }
  return 0;
}
