#include<bits/stdc++.h>
using namespace std;
void dfs(int u,int dep,int fa){
	vis[u]=cnt;
	deep[u]=dep;
	for(int i=0;i<g[u].size();i++){
		if(!vis[u]){
			dfs(g[u][i],dep+1);
		}
	}
	for(int i=0;i<g[u].size();i++){
		deep[u]=min(deep[g[u][i]],deep[u]);
	}
	if(deep[fa]==deep[u]){
		
	}
}
void dfs2(int x){
	vis[x]=1;
	for(int i=0;i<g[x].size();i++){
		if(deep[g[x][i]]<deep[x]) flg++; 
		if(!)
	}
}
int main(){
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++){
		int u,v;
		scanf("%d%d",&u,&v);
		g[u].push_back(v);
		g[v].push_back(u);
	}
	for(int i=1;i<=n;i++){
		if(!vis[i]){
			cnt++;
			dfs(i);
		}
	}
	memset(vis,0,sizeof(vis));
}
