#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define ul unsigned long long
#define nn "\n"
ll mod = 1e9+7;
const int N = 1e5 + 5;
int MOD = 998244353;
int bit[200000];
int n, m;
vector<int> adj[N];
int color[N];
void nhap(){
cin >> n >> m ;
int x,y;
for(int i= 0 ; i < m ; i++){
cin >> x >> y;
adj[x].push_back(y);
adj[y].push_back(x);
}
}
// void nhap(){
// cin >> n >> m;
// for(int i= 1 ; i <= n ; i++){
// for(int j= 1; j <= m ; j++){
// cin >> a[i][j];
// }
// }
// }
// void bfs(int sx, int sy) {
// dem++;
// queue < pair <int, int> > q;
// q.push({sx, sy});
// visited[sx][sy] = true;
// while (!q.empty()) {
// int x = q.front().first;
// int y = q.front().second;
// q.pop();
// for (int i = 0; i < 4; ++i) {
// int u = x + sX[i];
// int v = y + sY[i];
// if (u > n || u < 1) continue;
// if (v > m || v < 1) continue;
// if (a[u][v] != '#' && !visited[u][v]) {
// visited[u][v] = true;
// q.push({u, v});
// }
// }
// }
// }
bool bfs(int s, int &c0, int &c1) {
queue <int> q;
q.push(s);
color[s] = 0;
c0++;
while (!q.empty()) {
int u = q.front();
q.pop();
for (int v : adj[u]) {
if(color[v] == color[u]){
return false;
}
else if(color[v] == -1){
color[v] = !color[u];
q.push(v);
if(color[v] == 1) c1++;
else c0++;
}
}
}
return true;
}
int main() {
//freopen("BFS.INP", "r", stdin);
//freopen("BFS.OUT", "w", stdout);
ios_base::sync_with_stdio(0);
memset(color, -1, sizeof(color));
bool ok = false;
nhap();
int ans = 0;
for(int i = 1; i <= n ; i++){
if(color[i] == -1){
int c0 = 0, c1 = 0;
if( bfs(i, c0, c1) ){
ans += min(c0, c1);
ok = true;
}
else{
cout << "Impossible" << nn;
ok = false;
return 0;
}
}
}
if(ok) cout << ans << nn;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIGxsIGxvbmcgbG9uZwojZGVmaW5lIHVsIHVuc2lnbmVkIGxvbmcgbG9uZwojZGVmaW5lIG5uICJcbiIKCmxsIG1vZCA9IDFlOSs3Owpjb25zdCBpbnQgTiA9IDFlNSArIDU7CmludCBNT0QgPSA5OTgyNDQzNTM7CmludCBiaXRbMjAwMDAwXTsKaW50IG4sIG07CnZlY3RvcjxpbnQ+IGFkaltOXTsKaW50IGNvbG9yW05dOwoKdm9pZCBuaGFwKCl7CgljaW4gPj4gbiA+PiBtIDsKCWludCB4LHk7Cglmb3IoaW50IGk9IDAgOyBpIDwgbSA7ICBpKyspewoJCWNpbiA+PiB4ID4+IHk7CgkJYWRqW3hdLnB1c2hfYmFjayh5KTsKCQlhZGpbeV0ucHVzaF9iYWNrKHgpOwoJfQp9Ci8vIHZvaWQgbmhhcCgpewovLyAJY2luID4+IG4gPj4gbTsKLy8gCWZvcihpbnQgaT0gMSA7IGkgPD0gbiA7ICBpKyspewovLyAJCWZvcihpbnQgaj0gMTsgaiA8PSBtIDsgaisrKXsKLy8gCQkJY2luID4+IGFbaV1bal07CiAgICAgICAgICAgIAovLyAJCX0KLy8gCX0KLy8gfQovLyB2b2lkIGJmcyhpbnQgc3gsIGludCBzeSkgeyAKLy8gICAgIGRlbSsrOwovLyAgICAgcXVldWUgPCBwYWlyIDxpbnQsIGludD4gPiBxOwovLyAgICAgcS5wdXNoKHtzeCwgc3l9KTsKLy8gICAgIHZpc2l0ZWRbc3hdW3N5XSA9IHRydWU7Ci8vICAgICB3aGlsZSAoIXEuZW1wdHkoKSkgewovLyAgICAgICAgIGludCB4ID0gcS5mcm9udCgpLmZpcnN0OwovLyAgICAgICAgIGludCB5ID0gcS5mcm9udCgpLnNlY29uZDsKLy8gICAgICAgICBxLnBvcCgpOwogICAgICAgIAoKLy8gICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IDQ7ICsraSkgewovLyAgICAgICAgICAgICBpbnQgdSA9IHggKyBzWFtpXTsKLy8gICAgICAgICAgICAgaW50IHYgPSB5ICsgc1lbaV07CgovLyAgICAgICAgICAgICBpZiAodSA+IG4gfHwgdSA8IDEpIGNvbnRpbnVlOwovLyAgICAgICAgICAgICBpZiAodiA+IG0gfHwgdiA8IDEpIGNvbnRpbnVlOwogICAgICAgICAgIAoKLy8gICAgICAgICAgICAgaWYgKGFbdV1bdl0gIT0gJyMnICYmICF2aXNpdGVkW3VdW3ZdKSB7Ci8vICAgICAgICAgICAgICAgICB2aXNpdGVkW3VdW3ZdID0gdHJ1ZTsKLy8gICAgICAgICAgICAgICAgIHEucHVzaCh7dSwgdn0pOwovLyAgICAgICAgICAgICB9Ci8vICAgICAgICAgfQoKLy8gICAgIH0KLy8gfQpib29sIGJmcyhpbnQgcywgaW50ICZjMCwgaW50ICZjMSkgeyAKICAgIHF1ZXVlIDxpbnQ+IHE7CiAgICBxLnB1c2gocyk7CiAgICBjb2xvcltzXSA9IDA7CiAgICBjMCsrOwogICAgd2hpbGUgKCFxLmVtcHR5KCkpIHsKICAgICAgICBpbnQgdSA9IHEuZnJvbnQoKTsKICAgICAgICBxLnBvcCgpOwogICAgICAgIGZvciAoaW50IHYgOiBhZGpbdV0pIHsKICAgICAgICAgICAgaWYoY29sb3Jbdl0gPT0gY29sb3JbdV0pewogICAgICAgICAgICAJcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoY29sb3Jbdl0gPT0gLTEpewogICAgICAgICAgICAJY29sb3Jbdl0gPSAhY29sb3JbdV07CiAgICAgICAgICAgIAlxLnB1c2godik7CiAgICAgICAgICAgIAlpZihjb2xvclt2XSA9PSAxKSBjMSsrOwogICAgICAgICAgICAJZWxzZSBjMCsrOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIHRydWU7Cn0KaW50IG1haW4oKSB7CgkvL2ZyZW9wZW4oIkJGUy5JTlAiLCAiciIsIHN0ZGluKTsKCS8vZnJlb3BlbigiQkZTLk9VVCIsICJ3Iiwgc3Rkb3V0KTsKCWlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7CgltZW1zZXQoY29sb3IsIC0xLCBzaXplb2YoY29sb3IpKTsKCWJvb2wgb2sgPSBmYWxzZTsKCW5oYXAoKTsKCWludCBhbnMgPSAwOwoJZm9yKGludCBpID0gMTsgaSA8PSBuIDsgaSsrKXsKCQlpZihjb2xvcltpXSA9PSAtMSl7CgkJCWludCBjMCA9IDAsIGMxID0gMDsKCQkJaWYoIGJmcyhpLCBjMCwgYzEpICl7CgkJCQlhbnMgKz0gbWluKGMwLCBjMSk7CiAgICAJICAgICAgICBvayA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZXsKICAgICAgICAgICAgCWNvdXQgPDwgIkltcG9zc2libGUiIDw8IG5uOwogICAgICAgICAgICAJb2sgPSBmYWxzZTsKICAgICAgICAgICAgCXJldHVybiAwOwogICAgICAgICAgICB9IAoJCX0KCX0KCWlmKG9rKSBjb3V0IDw8IGFucyA8PCBubjsKICAgIAp9