#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define INF 1000000000 using namespace std; typedef long long ll; const int MAXK = 1024; const int MAXN = 128; int x[MAXK], y[MAXK]; int r[MAXN]; int main(void) { int N, K; cin >> N >> K; for (int i = 0; i < K; i++) { cin >> x[i] >> y[i]; } for (int i = 1; i <= N; i++) r[i] = i; for (int i = 0; i < K; i++) { swap(r[x[i]], r[y[i]]); } ll ans = 1; for (int i = 1; i <= N; i++) { int cur = r[i]; ll cnt = 1; while (cur != i) { cur = r[cur]; cnt++; } ans = ans * (cnt / __gcd(cnt, ans)); } cout << ans << endl; return 0; }