#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 3;
const int inf = 1e9;
const long long linf = 1e18;
const int md = 1e9 + 7;
const int M = 12 * 1e6;
int n, sz, q, x, sz1;
int d[M], l[M], r[M];
int root[N];
int copy(int v) {
  ++sz1;
  d[sz1] = d[v];
  l[sz1] = l[v];
  r[sz1] = r[v];
  return sz1;
}
void update(int v, int l, int r, int pos) {
  if (l == r) {
    d[v]++;
    return;
  }
  int mid = (l + r) / 2;
  if (pos <= mid) {
    ::l[v] = copy(::l[v]);
    update(::l[v], l, mid, pos);
  } else {
    ::r[v] = copy(::r[v]);
    update(::r[v], mid + 1, r, pos);
  }
  d[v]++;
}
int get_su(int v, int l, int r, int l_v, int r_v) {
  if (l > r_v || r < l_v) return 0;
  if (l >= l_v && r <= r_v) return d[v];
  int mid = (l + r) / 2;
  return get_su(::l[v], l, mid, l_v, r_v) +
         get_su(::r[v], mid + 1, r, l_v, r_v);
}
int get_sum(int l_v, int r_v, int x1, int x2) {
  int res = get_su(root[r_v], 1, sz, x1, x2);
  res -= get_su(root[l_v - 1], 1, sz, x1, x2);
  return res;
}
long long ans;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  ;
  cin >> n >> q;
  sz = 1;
  while (sz < n) sz *= 2;
  for (int i = 1; i < sz; ++i) {
    l[i] = i + i;
    r[i] = i + i + 1;
  }
  sz1 = sz * 2 - 1;
  for (int i = 1; i <= n; ++i) {
    cin >> x;
    root[i] = copy(root[i - 1]);
    update(root[i], 1, sz, x);
  }
  long long kl;
  int l, d1, r, u;
  for (int i = 1; i <= q; ++i) {
    cin >> l >> d1 >> r >> u;
    ans = n * 1ll * (n - 1);
    ans /= 2;
    kl = get_sum(1, n, 1, d1 - 1);
    ans -= kl * (kl - 1) / 2;
    kl = get_sum(1, n, u + 1, n);
    ans -= kl * (kl - 1) / 2;
    kl = get_sum(r + 1, n, 1, n);
    ans -= kl * (kl - 1) / 2;
    kl = get_sum(1, l - 1, 1, n);
    ans -= kl * (kl - 1) / 2;
    kl = get_sum(r + 1, n, 1, d1 - 1);
    ans += kl * (kl - 1) / 2;
    kl = get_sum(r + 1, n, u + 1, n);
    ans += kl * (kl - 1) / 2;
    kl = get_sum(1, l - 1, 1, d1 - 1);
    ans += kl * (kl - 1) / 2;
    kl = get_sum(1, l - 1, u + 1, n);
    ans += kl * (kl - 1) / 2;
    cout << ans << '\n';
  }
}
