3 1
erase -1
erase 0
erase -2147483648
 26 25
defragment
erase 1
erase -1560200883
alloc 44
defragment
alloc 75
alloc 22
defragment
erase 4
defragment
alloc 57
alloc 53
erase 4
erase -1639632026
erase -2121605039
erase 3
alloc 51
alloc 65
defragment
erase 2
erase 4
alloc 52
erase 3
defragment
erase -1842529282
erase 3
 12 40
erase 1
alloc 21
alloc 5
alloc 7
defragment
defragment
erase 2
alloc 83
erase 4
defragment
alloc 59
defragment
 44 46
alloc 28
alloc 36
defragment
erase -937404236
alloc 71
defragment
alloc 81
alloc 51
erase 3
defragment
alloc 48
erase 1
defragment
alloc 36
defragment
defragment
erase 1
defragment
defragment
erase -1173350787
alloc 94
erase 5
defragment
erase 9
alloc 98
erase 7
defragment
erase 5
erase 1
defragment
erase 2
defragment
erase 4
defragment
erase 9
alloc 8
defragment
erase 9
defragment
defragment
defragment
erase 1
alloc 70
erase 9
 7 6
alloc 1
alloc 2
alloc 3
erase 1
defragment
erase 3
alloc 4
 47 43
erase 1
alloc 95
alloc 53
erase 2
defragment
alloc 100
erase 4
erase 2
erase -849472053
defragment
erase -638355221
alloc 90
erase 3
erase 2
defragment
alloc 17
erase 5
defragment
erase 6
defragment
erase 3
defragment
defragment
alloc 99
alloc 69
alloc 80
erase 9
erase 5
defragment
erase 7
defragment
alloc 93
defragment
defragment
alloc 25
defragment
alloc 14
erase 8
erase 4
defragment
defragment
alloc 96
erase 9
alloc 63
erase 8
defragment
erase 10
 8 50
alloc 51
defragment
alloc 100
defragment
erase 1
alloc 50
defragment
alloc 50
 6 1
defragment
alloc 10
alloc 1
erase -1
erase 1
erase 1
 26 25
alloc 25
erase 1
alloc 24
erase 2
alloc 23
erase 3
alloc 24
erase 4
alloc 24
erase 5
alloc 21
erase 6
alloc 24
erase 7
alloc 25
erase 8
alloc 25
erase 9
alloc 24
erase 10
alloc 25
erase 11
alloc 25
erase 12
alloc 25
erase 13
 10 10
alloc 10
erase -1
erase 1
alloc 5
erase -1
alloc 5
erase 0
alloc 5
erase 0
alloc 5
 37 74
alloc 11
defragment
erase 1
defragment
erase 2
defragment
alloc 90
erase 3
erase 2
erase 3
erase 1
erase 1
alloc 38
alloc 19
erase 1
erase 3
defragment
alloc 93
erase 5
erase 4
alloc 66
alloc 71
erase 5
defragment
defragment
defragment
defragment
erase 7
alloc 47
erase -95616683
erase 2
alloc 28
alloc 32
erase 11
alloc 50
defragment
defragment
 19 46
alloc 21
erase 2
erase 1
defragment
alloc 4
defragment
defragment
alloc 40
erase 1
defragment
defragment
alloc 68
erase -388966015
alloc 85
alloc 53
erase 4
defragment
alloc 49
alloc 88
 12 10
alloc 6
alloc 2
erase 1
alloc 4
alloc 2
erase 3
alloc 2
alloc 3
alloc 1
alloc 1
alloc 1
alloc 1
 16 10
alloc 10
defragment
defragment
defragment
alloc 10
erase 1
erase 2
alloc 6
defragment
defragment
alloc 4
defragment
defragment
erase 2
defragment
alloc 6
 14 100
alloc 99
alloc 1
alloc 1
erase 2
alloc 1
erase 4
erase 1
alloc 100
alloc 1
alloc 99
defragment
erase 4
alloc 100
alloc 99
 22 9
alloc 9
erase 1
alloc 9
erase 2
alloc 9
erase 3
alloc 9
erase 4
alloc 9
erase 5
alloc 9
erase 6
alloc 9
erase 7
alloc 9
erase 8
alloc 9
erase 9
alloc 9
erase 10
alloc 9
erase 11
 42 98
defragment
defragment
defragment
defragment
defragment
alloc 5
alloc 66
defragment
erase 3
alloc 53
defragment
erase 4
erase 2
alloc 70
erase 3
defragment
defragment
erase 2
erase 3
erase -1327931832
alloc 93
alloc 64
erase 7
erase 6
erase 3
alloc 61
alloc 12
alloc 65
erase 2
alloc 46
erase 11
erase 9
erase 9
erase 6
alloc 2
alloc 78
defragment
erase 13
erase 6
erase 10
alloc 53
alloc 46
 16 10
alloc 10
defragment
defragment
defragment
alloc 10
erase 1
erase 2
alloc 6
defragment
defragment
alloc 4
defragment
defragment
erase 3
defragment
alloc 6
 38 18
alloc 72
erase 2
alloc 50
defragment
erase 3
defragment
alloc 43
alloc 41
defragment
defragment
alloc 26
alloc 46
alloc 16
alloc 15
defragment
defragment
alloc 95
erase 7
erase 7
erase 5
erase 2
erase 9
erase 7
alloc 43
defragment
erase 7
defragment
alloc 48
alloc 77
erase 10
erase 11
alloc 16
alloc 84
erase 1
defragment
alloc 86
defragment
erase 13
 16 49
erase -751005193
defragment
alloc 37
alloc 82
erase 3
erase 1
alloc 80
alloc 51
defragment
alloc 74
erase 1
alloc 91
defragment
defragment
alloc 98
defragment
 22 9
erase 1
alloc 6
alloc 65
erase 1
alloc 87
erase -1638927047
alloc 5
erase 2
alloc 70
defragment
alloc 20
alloc 48
erase -69401977
alloc 20
defragment
erase 7
defragment
erase 9
erase 7
erase 4
defragment
alloc 66
 7 100
alloc 100
erase 2147483647
erase 1
alloc 50
alloc 50
erase 3
erase -2147483648

ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
 ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
1
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
 ILLEGAL_ERASE_ARGUMENT
1
2
3
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
 1
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
2
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
3
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
 1
2
3
4
 ILLEGAL_ERASE_ARGUMENT
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
1
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
2
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
 NULL
NULL
ILLEGAL_ERASE_ARGUMENT
1
NULL
 NULL
1
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
 1
2
3
4
5
6
7
8
9
10
11
12
13
 1
ILLEGAL_ERASE_ARGUMENT
2
ILLEGAL_ERASE_ARGUMENT
3
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
 1
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
2
3
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
4
5
ILLEGAL_ERASE_ARGUMENT
NULL
 1
ILLEGAL_ERASE_ARGUMENT
2
3
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
 1
2
3
4
5
NULL
6
7
8
9
 1
NULL
ILLEGAL_ERASE_ARGUMENT
2
3
4
 1
2
NULL
3
ILLEGAL_ERASE_ARGUMENT
NULL
4
NULL
NULL
NULL
 1
2
3
4
5
6
7
8
9
10
11
 1
2
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
3
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
4
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
 1
NULL
ILLEGAL_ERASE_ARGUMENT
2
3
NULL
 NULL
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
NULL
NULL
1
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
 ILLEGAL_ERASE_ARGUMENT
1
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
NULL
 ILLEGAL_ERASE_ARGUMENT
1
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
2
NULL
NULL
NULL
ILLEGAL_ERASE_ARGUMENT
NULL
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
ILLEGAL_ERASE_ARGUMENT
NULL
 1
ILLEGAL_ERASE_ARGUMENT
2
3
ILLEGAL_ERASE_ARGUMENT

#include <bits/stdc++.h>
using namespace std;
const double EPS = 1E-10;
inline long long intpow(long long a, long long n) {
  long long r = 1;
  while (n) {
    if (n & 1) {
      r *= a;
    } else {
      a *= a;
      n = n >> 1;
    }
  }
  return r;
}
inline long long hash(string s) {
  long long r = 0;
  long long p = 1;
  long long m = 1777;
  for (int i = 0; i < s.size(); i++) {
    r += s[i] * p;
    p *= m;
  }
  return r;
}
inline short bit(long long a, int p) { return (a >> p) & 1; }
inline long long gcd(long long a, long long b) {
  if (a == b) return a;
  if (a == 0) return b;
  if (b == 0) return a;
  if (a > b)
    return gcd(a % b, b);
  else
    return gcd(a, b % a);
}
vector<string> splitstring(string s, char* tokens) {
  bool b[256];
  memset(b, 0, sizeof(b));
  for (int i = 0; i < strlen(tokens); i++) {
    b[int(tokens[i])] = true;
  }
  vector<string> r;
  string t = "";
  for (int i = 0; i < s.size(); i++) {
    if (b[s[i]]) {
      if (!t.empty()) {
        r.push_back(t);
        t.clear();
      }
    } else {
      t += s[i];
    }
  }
  if (!t.empty()) {
    r.push_back(t);
    t.clear();
  }
  return r;
}
vector<int> kmp(string s, string t) {
  string r = s + "\r" + t;
  int sz = r.size();
  int ssz = s.size();
  int tsz = t.size();
  vector<int> p(sz);
  p[0] = 0;
  int j;
  for (int i = 1; i < sz; ++i) {
    j = p[i - 1];
    while (j > 0 && r[i] != r[j]) j = p[j - 1];
    if (r[i] == r[j]) ++j;
    p[i] = j;
  }
  vector<int> ans;
  for (int i = s.size() + 1; i < sz; i++) {
    if (p[i] == ssz) {
      ans.push_back(i - ssz - ssz);
    }
  }
  return ans;
}
void dbgVint(vector<int> a) {
  for (int i = 0; i < a.size(); i++) {
    printf("%d ", a[i]);
  }
  printf("\n");
}
void dbgVvint(vector<vector<int> > a) {
  for (int i = 0; i < a.size(); i++) {
    dbgVint(a[i]);
  }
}
void dbgVstr(vector<string> a) {
  for (int i = 0; i < a.size(); i++) {
    printf("%s\n", a[i].data());
  }
}
int main() {
  int t, m;
  cin >> t >> m;
  vector<int> b(m);
  int id = 1;
  for (int i = 0; i < t; i++) {
    string s;
    cin >> s;
    if (s[0] == 'a') {
      int sz;
      cin >> sz;
      bool p = false;
      int k = 0;
      for (int j = 0; j < m; j++) {
        if (b[j] == 0)
          k++;
        else {
          k = 0;
        }
        if (k == sz) {
          for (int u = j - k + 1; u <= j; u++) {
            b[u] = id;
          }
          p = true;
          break;
        }
      }
      if (p) {
        cout << id << endl;
        id++;
      } else {
        cout << "NULL" << endl;
      }
    } else {
      if (s[0] == 'e') {
        int w;
        cin >> w;
        if (w >= id || w <= 0) {
          cout << "ILLEGAL_ERASE_ARGUMENT" << endl;
          continue;
        }
        bool p = false;
        for (int i = 0; i < m; i++) {
          if (b[i] == w) {
            p = true;
            for (int j = i; j < m && b[j] == w; j++) {
              b[j] = 0;
            }
            break;
          }
        }
        if (!p) {
          cout << "ILLEGAL_ERASE_ARGUMENT" << endl;
        }
      } else {
        vector<int> nb;
        for (int i = 0; i < m; i++) {
          if (b[i] != 0) nb.push_back(b[i]);
        }
        nb.resize(m);
        b = nb;
      }
    }
  }
  return 0;
}
