#include<iostream>
#include<cstring>
using namespace std;
int count = 0;
class zhan
{
public:
bool *data ;
int top;
};
void chu(zhan*p,int &a)
{
p->data = new bool[a];
memset(p->data, 0, sizeof(bool) * a);
p->top = 0;
}
void ruzhan(zhan*p,int &k)
{
p->data[k] = 1;
p->top = k;
::count++;
}
void chuzhan(zhan* p, int &k)
{
for (int i = k+1; i <= p->top; i++)
{
if (p->data[i] == 1)
{
p->data[i] = false;
::count++;
}
}
if (p->data[k] == false)
{
ruzhan(p, k);
}
p->top = k;
}
int main()
{
int n = 0,type=0;
cin >> n >> type;
zhan arr[6];
for (int i = 0; i < 6; i++)
{
chu(&arr[i], type);
}
for (int i = 0; i < n; i++)
{
int kind = 0, k = 0;
cin >> kind >> k;
if (arr[kind].top < k)
{
ruzhan(&arr[kind], k);
}
else if (arr[kind].top > k)
{
chuzhan(&arr[kind], k);
}
}
cout << ::count;
}