#include #define rep(i,a,b) for(int i=a;i> N >> K; rep(i, 1, N + 1) E[i] = i; rep(i, 0, K) { int x, y; cin >> x >> y; swap(E[x], E[y]); } ll ans = 1; rep(i, 1, N + 1) { int loop = dfs(i, i); if (loop < 0) { ans = -1; break; } ans = lcm(ans, loop); } cout << ans << endl; }