import sequtils,strutils,math var N = stdin.readline.parseInt K = stdin.readline.parseInt A : array[1..100, int] flag : array[1..100, bool] times = newSeq[int](0) x,y : int for i,a in A: A[i] = i for k in 1..K: (x,y) = stdin.readline.split.map(parseInt) (A[x],A[y]) = (A[y],A[x]) for n in 1..N: if flag[n] == true or A[n] == n: continue var i = n cnt = 1 i = A[i] while i != n: flag[i] = true i = A[i] cnt += 1 flag[i] = true times.add(cnt) var ans = 1 for i in times: ans = lcm(ans, i) echo ans