#include <bits/stdc++.h>
using namespace std;
int i, j, k, n, m, type, s, sum, T, V;
int f[1100010], t[1100010], l[1100010], r[1100010], x[1100010], a[1100010],
    L[1100010], R[1100010];
int main() {
  for (i = 0; i <= 20; i++) a[1 << i] = 1;
  for (i = 1; i <= 1100010 - 1; i++) a[i] += a[i - 1];
  scanf("%d%d", &n, &m);
  for (i = 1; i <= m; i++) {
    scanf("%d", &type);
    if (type == 1)
      s++, scanf("%d%d%d%d", &t[s], &l[s], &r[s], &x[s]);
    else {
      scanf("%d%d", &T, &V);
      sum = 0;
      L[T] = V - 1, R[T] = V;
      for (j = T + 1; j <= n; j++)
        L[j] = L[j - 1] + a[L[j - 1]], R[j] = R[j - 1] + a[R[j - 1]];
      for (j = 1; j <= s; j++)
        if (t[j] >= T && !(L[t[j]] >= r[j] || R[t[j]] < l[j]) && f[x[j]] != i)
          f[x[j]] = i, sum++;
      printf("%d\n", sum);
    }
  }
  return 0;
}
