100 1
100 50 99 49 98 48 97 47 96 46 95 45 94 44 93 43 92 42 91 41 90 40 89 39 88 38 87 37 86 36 85 35 84 34 83 33 82 32 81 31 80 30 79 29 78 28 77 27 76 26 75 25 74 24 73 23 72 22 71 21 70 20 69 19 68 18 67 17 66 16 65 15 64 14 63 13 62 12 61 11 60 10 59 9 58 8 57 7 56 6 55 5 54 4 53 3 52 2 51 1
9 8 99 93
 2 9
1 2
1 1 1 1
1 1 1 2
1 2 1 2
1 1 2 1
1 1 2 2
1 2 2 2
2 1 2 1
2 1 2 2
2 2 2 2
 10 10
6 5 7 4 8 3 9 2 10 1
8 8 8 8
2 1 2 7
8 4 8 4
3 9 3 9
7 7 7 7
2 10 2 10
6 8 9 8
1 4 1 4
1 5 4 5
8 10 8 10
 10 10
1 10 2 9 3 8 4 7 5 6
4 3 7 10
3 6 8 7
3 2 6 4
1 1 2 8
3 8 10 9
7 3 8 9
4 5 5 9
2 5 6 7
2 5 6 7
1 7 6 10
 10 5
5 10 4 9 3 8 2 7 1 6
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
 10 10
10 9 8 7 6 5 4 3 2 1
8 8 8 8
2 1 2 7
8 4 8 4
3 9 3 9
7 7 7 7
2 10 2 10
6 8 9 8
1 4 1 4
1 5 4 5
8 10 8 10
 7 7
1 2 3 6 7 4 5
3 2 4 6
3 2 5 4
3 6 7 7
1 1 4 4
2 2 7 6
1 2 6 2
1 2 6 7
 10 10
6 1 7 2 8 3 9 4 10 5
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
 10 10
5 1 6 2 8 3 4 10 9 7
8 1 8 1
1 7 2 7
4 3 8 7
3 7 9 7
7 6 7 7
2 3 10 6
6 4 8 7
1 6 4 7
1 2 5 4
8 5 10 10
 10 10
5 6 4 7 3 8 2 9 1 10
8 8 8 8
2 1 2 7
8 4 8 4
3 9 3 9
7 7 7 7
2 10 2 10
6 8 9 8
1 4 1 4
1 5 4 5
8 10 8 10
 10 10
10 5 9 4 8 3 7 2 6 1
8 1 8 1
1 7 2 7
4 3 8 7
3 7 9 7
7 6 7 7
2 3 10 6
6 4 8 7
1 6 4 7
1 2 5 4
8 5 10 10
 10 10
7 5 1 6 10 3 4 8 9 2
4 3 7 10
3 6 8 7
3 2 6 4
1 1 2 8
3 8 10 9
7 3 8 9
4 5 5 9
2 5 6 7
2 5 6 7
1 7 6 10
 10 10
1 2 3 4 5 6 7 8 9 10
8 8 8 8
2 1 2 7
8 4 8 4
3 9 3 9
7 7 7 7
2 10 2 10
6 8 9 8
1 4 1 4
1 5 4 5
8 10 8 10
 10 10
5 1 6 2 8 3 4 10 9 7
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
 10 10
9 8 3 4 5 6 7 2 1 10
8 1 8 1
1 7 2 7
4 3 8 7
3 7 9 7
7 6 7 7
2 3 10 6
6 4 8 7
1 6 4 7
1 2 5 4
8 5 10 10
 10 10
10 1 9 2 8 3 7 4 6 5
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
1 1 10 10
 10 10
5 1 6 2 8 3 4 10 9 7
9 5 9 5
4 7 4 7
4 8 5 8
9 1 9 4
4 1 4 6
10 9 10 9
3 5 6 5
3 4 10 4
3 2 5 2
7 8 7 8
 6 10
3 6 1 2 5 4
2 6 2 6
2 3 2 5
6 2 6 2
1 5 1 5
3 5 3 5
2 2 2 4
2 4 5 4
5 4 5 4
1 5 6 5
6 2 6 2
 10 10
1 6 2 7 3 8 4 9 5 10
8 8 8 8
2 1 2 7
8 4 8 4
3 9 3 9
7 7 7 7
2 10 2 10
6 8 9 8
1 4 1 4
1 5 4 5
8 10 8 10

                                                            4886
                                                                1
                                                               1
                                                               1
                                                               1
                                                               1
                                                               1
                                                               1
                                                               1
                                                               1
                                                               11
                                                              17
                                                              15
                                                               6
                                                              16
                                                               2
                                                              19
                                                               4
                                                              20
                                                               8
                                                               39
                                                              30
                                                              26
                                                              16
                                                              23
                                                              29
                                                              27
                                                              30
                                                              30
                                                              27
                                                               45
                                                              45
                                                              45
                                                              45
                                                              45
                                                                9
                                                              14
                                                              21
                                                              16
                                                              16
                                                               9
                                                              15
                                                               4
                                                              20
                                                               3
                                                               17
                                                              16
                                                              11
                                                              16
                                                              21
                                                              11
                                                              21
                                                               45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                                3
                                                               8
                                                              37
                                                              27
                                                              21
                                                              38
                                                              29
                                                              21
                                                              23
                                                              24
                                                               16
                                                              17
                                                              12
                                                               6
                                                              16
                                                               2
                                                              23
                                                               4
                                                              20
                                                               8
                                                                8
                                                              10
                                                              38
                                                              26
                                                              21
                                                              38
                                                              31
                                                              20
                                                              21
                                                              19
                                                               38
                                                              30
                                                              25
                                                              17
                                                              24
                                                              28
                                                              29
                                                              32
                                                              32
                                                              25
                                                               23
                                                              17
                                                              12
                                                               6
                                                              27
                                                               2
                                                              23
                                                               7
                                                              24
                                                               8
                                                               45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                                8
                                                              14
                                                              38
                                                              27
                                                              19
                                                              38
                                                              29
                                                              20
                                                              23
                                                              19
                                                               45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                              45
                                                               10
                                                              16
                                                              17
                                                               8
                                                              27
                                                               2
                                                              25
                                                              26
                                                              16
                                                              16
                                                                5
                                                               9
                                                               2
                                                               2
                                                               6
                                                               8
                                                              11
                                                               8
                                                               9
                                                               2
                                                               16
                                                              17
                                                              12
                                                               6
                                                              16
                                                               2
                                                              23
                                                               7
                                                              18
                                                               8

#include <bits/stdc++.h>
using namespace std;
long long gcd(long long a, long long b) { return b == 0 ? a : gcd(b, a % b); }
long long lca(long long a, long long b) { return (a * b / gcd(a, b)); }
vector<long long> tree;
long long sz = 1;
void uno(long long pos) {
  pos += sz;
  tree[pos]++;
  for (; pos > 0; pos >>= 1) {
    tree[pos >> 1] = tree[pos] + tree[pos ^ 1];
  }
}
long long sum(long long l, long long r) {
  long long ans = 0;
  for (l += sz, r += sz; l <= r; l >>= 1, r >>= 1) {
    if (l & 1) ans += tree[l++];
    if (~r & 1) ans += tree[r--];
  }
  return ans;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  long long n, q;
  cin >> n >> q;
  vector<long long> d(n);
  vector<tuple<long long, long long, long long, long long, long long> > sq;
  vector<vector<tuple<long long, long long, bool, long long> > > event(n);
  while (sz < n) sz <<= 1;
  tree.assign(4 * n + 1, 0);
  for (long long i = 0; i < n; i++) {
    cin >> d[i];
  }
  long long x, y, x2, y2;
  for (long long i = 0; i < q; i++) {
    cin >> x >> y >> x2 >> y2;
    x--;
    x2--;
    y--;
    y2--;
    sq.push_back(tuple<long long, long long, long long, long long, long long>(
        x, y, x2, y2, i));
    tuple<long long, long long, bool, long long> start(y, y2, false, i);
    tuple<long long, long long, bool, long long> end(y, y2, true, i);
    if (x >= 1) event[x - 1].push_back(start);
    event[x2].push_back(end);
  }
  vector<long long> stat(q, 0);
  for (long long x = 0; x < n; x++) {
    uno(d[x]);
    for (auto e : event[x]) {
      bool start = !get<2>(e);
      long long y = get<0>(e), y2 = get<1>(e), id = get<3>(e);
      if (start) {
        stat[id] -= sum(y, y2);
      } else
        stat[id] += sum(y, y2);
    }
  }
  vector<vector<long long> > helper(stat.size(), vector<long long>(8, 0));
  vector<vector<tuple<long long, long long, bool, long long, long long> > >
      nevent(n);
  for (long long i = 0; i < sq.size(); i++) {
    tuple<long long, long long, long long, long long, long long> tmp1 = sq[i];
    long long id = get<4>(tmp1);
    long long x = get<0>(tmp1);
    long long y = get<1>(tmp1);
    long long x2 = get<2>(tmp1);
    long long y2 = get<3>(tmp1);
    if (x >= 1) {
      auto tmp = tuple<long long, long long, bool, long long, long long>(
          0, y - 1, false, id, 1);
      nevent[x - 1].push_back(tmp);
      if (y2 < n - 1) {
        tmp = tuple<long long, long long, bool, long long, long long>(
            y2 + 1, n - 1, false, id, 6);
        nevent[x - 1].push_back(tmp);
      }
    }
    if (x2 >= 1) {
      if (y > 0) {
        auto tmp = tuple<long long, long long, bool, long long, long long>(
            0, y - 1, false, id, 2);
        nevent[x2].push_back(tmp);
      }
      auto tmp = tuple<long long, long long, bool, long long, long long>(
          y, y2, false, id, 4);
      nevent[x2].push_back(tmp);
      if (y2 < n - 1) {
        tmp = tuple<long long, long long, bool, long long, long long>(
            y2 + 1, n - 1, false, id, 7);
        nevent[x2].push_back(tmp);
      }
    }
    if (x >= 1) {
      if (y > 0) {
        auto tmp = tuple<long long, long long, bool, long long, long long>(
            0, y - 1, true, id, 0);
        nevent[x - 1].push_back(tmp);
      }
      auto tmp = tuple<long long, long long, bool, long long, long long>(
          y, y2, true, id, 3);
      nevent[x - 1].push_back(tmp);
      if (y2 < n - 1) {
        tmp = tuple<long long, long long, bool, long long, long long>(
            y2 + 1, n - 1, true, id, 5);
        nevent[x - 1].push_back(tmp);
      }
    }
    if (y > 0) {
      auto tmp = tuple<long long, long long, bool, long long, long long>(
          0, y - 1, true, id, 1);
      nevent[x2].push_back(tmp);
    }
    if (y2 < n - 1) {
      auto tmp = tuple<long long, long long, bool, long long, long long>(
          y2 + 1, n - 1, true, id, 6);
      nevent[x2].push_back(tmp);
    }
    if (y > 0) {
      auto tmp = tuple<long long, long long, bool, long long, long long>(
          0, y - 1, true, id, 2);
      nevent[n - 1].push_back(tmp);
    }
    auto tmp = tuple<long long, long long, bool, long long, long long>(
        y, y2, true, id, 4);
    nevent[n - 1].push_back(tmp);
    if (y2 < n - 1) {
      auto tmp = tuple<long long, long long, bool, long long, long long>(
          y2 + 1, n - 1, true, id, 7);
      nevent[n - 1].push_back(tmp);
    }
  }
  tree.assign(4 * n + 1, 0);
  for (long long x = 0; x < n; x++) {
    uno(d[x]);
    for (auto e : nevent[x]) {
      bool start = !get<2>(e);
      long long y = get<0>(e), y2 = get<1>(e), id = get<3>(e), id2 = get<4>(e);
      if (start) {
        helper[id][id2] -= sum(y, y2);
      } else {
        helper[id][id2] += sum(y, y2);
      }
    }
  }
  for (long long i = 0; i < stat.size(); i++) {
    stat[i] = stat[i] * (d.size() - stat[i]) + stat[i] * (stat[i] - 1) / 2 +
              helper[i][0] * (helper[i][4] + helper[i][7] + helper[i][6]) +
              helper[i][3] * (helper[i][2] + helper[i][4] + helper[i][7] +
                              helper[i][6] + helper[i][1]) +
              helper[i][5] * (helper[i][2] + helper[i][4] + helper[i][1]) +
              helper[i][6] * (helper[i][4] + helper[i][2]) +
              helper[i][1] * (helper[i][4] + helper[i][7]) +
              helper[i][1] * (helper[i][6]);
    cout << stat[i] << '\n';
  }
  return 0;
}
