令 $n$ 为一个正整数。求有多少个整数 $1 \le M \le n$,使得存在一个整数数组 $a[1..n]$ 满足以下条件: $$a[x_i] + 1 \equiv a[y_i] \pmod M, \quad 1 \le i \le q$$
输入格式
第一行包含两个整数 $n$ 和 $q$:数组大小和条件数量 ($1 \le n, q \le 10^6$)。 接下来的 $q$ 行,每行包含两个整数 $x_i$ 和 $y_i$:描述对应条件的下标 ($1 \le x_i, y_i \le n$)。
输出格式
第一行输出一个整数 $t$:可能的 $M$ 的个数。第二行按升序输出这 $t$ 个可能的 $M$ 值。
样例
样例输入 1
3 3 1 2 2 3 3 1
样例输出 1
2 1 3
样例输入 2
5 5 1 2 2 3 3 4 4 5 1 5
样例输出 2
2 1 3
样例输入 3
5 5 1 2 2 3 3 1 4 5 5 4
样例输出 3
1 1
样例输入 4
5 1 1 2
样例输出 4
5 1 2 3 4 5