import sequtils,strutils,algorithm,math,sugar,macros,strformat import sets,tables,intsets,queues,heapqueue,bitops template get*():string = stdin.readLine().strip() macro unpack*(arr: auto,cnt: static[int]): auto = let t = genSym(); result = quote do:(let `t` = `arr`;()) for i in 0.." .} proc scan(): int = while true: var k = getchar_unlocked() if k < '0' or k > '9': break else: result = 10 * result + k.ord - '0'.ord let n = scan() # 50 let m = scan() # 1000 let AB = newSeqWith(m,(scan(),scan())) var mat = newSeqWith(n,newSeq[bool](n)) for ab in AB: let (a,b) = ab mat[a][b] = true mat[b][a] = true var ans = 0 for i in 0..