#include<stdio.h>
#include<stdlib.h>
#define max 20
int adj[max][max];
int c[max];
int isbar(int n){
    int queue[max];
    int front=0,rear=0;
    for(int i=0;i<n;i++)
        c[i]=-1;
    for(int start=0;start<n;start++){
        if(c[start]==-1){
            c[start]=0;
            queue[++rear]=start;
            while(front<=rear){
                int u=queue[front++];
                for(int v=0;v<n;v++){
                    if(adj[u][v]){
                        if(c[v]==-1){
                            c[v]=1-c[u];
                            queue[++rear]=v;
                        }else if(c[v]==c[u]) return 0;
                    }
                }
            }
        }
    }
    return 1;
}
int main(){
    int n,m,u,v;
    scanf("%d %d",&n,&m);
    if(n<0||m<0){
        printf("Invalid input");
        return 0;
    }
    for(int i==0;i<n;i++){
        for(int j=0;j<n;j++){
            adj[i][j]=0;
        }
    }
    for(int i=0;i<m;i++){
        scanf("%d %d",&u,&v);;
        adj[u][v]=1;
        adj[v][u]=1;
    }
    if(isbar(n))
        printf("Bipartite");
    else
        printf("Not Bipartite");
    return 0;
}