#include using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define ll long long #define INF 9e18; int N,M; int u[20009],v[200009]; vector>G[200009]; int color[200009]; int main(){ cin>>N>>M; /*if(M%2==1){ cout<<"-1"<>u[i]>>v[i]; G[u[i]].push_back(make_pair(v[i],i)); G[v[i]].push_back(make_pair(u[i],i)); /*if((u[i]==1 && v[i]==N) || (u[i]==N && v[i]==1)){ cout<<-1<>Q; Q.push(make_pair(1,0)); Q.push(make_pair(N,1)); int blue=0; int red=0; int seigen=M/2; while(!Q.empty()){ int pos=Q.front().first; rep(i,G[pos].size()){ if(G[pos][i].first!=1 && G[pos][i].first!=N && color[G[pos][i].second]==-1){ if(pos==1 && blue