#include<iostream>
#include<stdio.h>
#include<stack>
using namespace std;
int main()
{
int t,p,q,a,b;
bool flag;
scanf("%d",&t);
while (t--)
{
stack <int > han[3];
flag = true;
scanf("%d%d",&p,&q);
for (int i = p;i>0;i--)
han[0].push(i);
for (int i = 0;i<q;i++)
{
scanf("%d%d",&a,&b);
a--,b--;
if ( flag )
{
if ( han[a].empty() ) flag = false;
else
{
int c = han[a].top();
han[a].pop();
if( !han[b].empty() && c > han[b].top() ) flag = false;
han[b].push(c);
}
}
}
if( flag ) printf("legal\n");
else printf("illegal\n");
}
}