#include <bits/stdc++.h>
using namespace std;
long long T[600001][11], sum[300001], MAX, ans, ANS;
int h[300001], d[200005], n, m, A, B, L, R, i, X;
const long long inf = (long long)1000000000 * (1000000);
void work(int root, int l, int r, int t) {
  if (T[root][0] == l && T[root][1] == r) {
    if (T[root][t] > MAX) {
      MAX = T[root][t];
      X = T[root][t + 2];
    }
    return;
  }
  int mid = (T[root][0] + T[root][1]) / 2;
  if (l <= mid) work(root * 2, l, min(mid, r), t);
  if (r > mid) work(root * 2 + 1, max(mid + 1, l), r, t);
}
int main() {
  scanf("%d%d", &n, &m);
  for (i = 1; i <= n; i++) scanf("%d", &d[i]);
  for (i = 1; i <= n; i++) scanf("%d", &h[i]);
  for (i = n + 1; i < 2 * n; i++) h[i] = h[i - n];
  for (i = n + 1; i < 2 * n; i++) d[i] = d[i - n];
  for (i = 1; i < 2 * n; i++) sum[i] = sum[i - 1] + d[i];
  for (i = 262144; i < 524288; i++) T[i][0] = T[i][1] = i;
  for (i = 262143; i >= 1; i--) {
    T[i][0] = T[i * 2][0];
    T[i][1] = T[i * 2 + 1][1];
  }
  for (i = 1; i < 2 * n; i++)
    T[i + 262143][2] = 2 * h[i] - sum[i - 1],
          T[i + 262143][3] = 2 * h[i] + sum[i - 1];
  for (i = 262144; i < 524288; i++) T[i][4] = T[i][5] = i;
  for (i = 262143; i >= 1; i--) {
    if (T[i * 2][2] > T[i * 2 + 1][2])
      T[i][4] = T[i * 2][4];
    else
      T[i][4] = T[i * 2 + 1][4];
    if (T[i * 2][3] > T[i * 2 + 1][3])
      T[i][5] = T[i * 2][5];
    else
      T[i][5] = T[i * 2 + 1][5];
    T[i][2] = max(T[i * 2][2], T[i * 2 + 1][2]);
    T[i][3] = max(T[i * 2][3], T[i * 2 + 1][3]);
  }
  while (m--) {
    scanf("%d%d", &A, &B);
    if (A <= B) {
      L = B + 1;
      R = n + A - 1;
    } else {
      L = B + n + 1;
      R = A + n - 1;
    }
    MAX = -inf;
    X = 0;
    work(1, 262144 + L, 262143 + R, 3);
    ans = MAX;
    MAX = -inf;
    work(1, 262143 + L, X - 1, 2);
    ANS = ans + MAX;
    MAX = -inf;
    X = 0;
    work(1, 262143 + L, 262142 + R, 2);
    ans = MAX;
    MAX = -inf;
    work(1, X + 1, 262143 + R, 3);
    ANS = max(ANS, ans + MAX);
    printf("%I64d\n", ANS);
  }
  return 0;
}
