#include <stdio.h>
#include <String.h>
int edge[205][205];
int DFS( int p[], int i, int n, int color )
{
int change = color ^ 3;
int answer = 1;
if ( p[i] ) {
if ( p[i] != color )
return 0;
if ( p[i] == color )
return 1;
}
p[i] = color;
int j;
for (j = i + 1 ; j < n ; j++ )
if ( edge[i][j] )
answer &= DFS( p, j, n, change );
return answer;
}
int main()
{
int n, l, n1, n2;
int p[205];
while ( scanf( "%d", &n ) != EOF && n != 0 ) {
scanf( "%d", &l );
memset( p, 0, sizeof(p) );
memset( edge, 0, sizeof(edge) );
int i;
for (i = 0 ; i < l ; i++ ) {
scanf("%d%d", &n1, &n2 );
edge[n1][n2] = 1;
edge[n2][n1] = 1;
}
if ( DFS( p, 0, n, 1 ) )
printf( "BICOLORABLE.\n" );
else
printf( "NOT BICOLORABLE.\n" );
}
return 0;
}