#420. 跑步

跑步

Background

Special for beginners, ^_^

Description

新牛到部队,CG 要求它们每天早上搞晨跑,从 A 农场跑到 B 农场。从 A 农场到 B 农场中有 n-2 个路口,分别标上号,A 农场为 1 号,B 农场为 n 号,路口分别为 2...n-1 号,从 A 农场到 B 农场有很多条路径可以到达,而 CG 发现有的路口是必须经过的,即每条路径都经过的路口,CG 要把它们记录下来,这样 CG就可以先到那个路口,观察新牛们有没有偷懒,而你的任务就是找出所有必经路口。

Format

Input

第一行两个用空格隔开的整数 n(3≤n≤2000)和 e(1≤e≤8000)。接下来从第 2 到第 e+1 行,每行两个用空格隔开的整数 p 和 q,表示路口 p和 q 之间有路径直达。输入数据保证必经路口一定存在,并且每个路口都和 A 农场、B 农场相连通。

Output

第一行一个整数 m,表示必经路口的数目。 第二行按从小到大的顺序依次输出每个必经路口的编号,每两个数之间用一个空格隔开。 注意:不包括起点和终点。

Samples

6 6
1 2
2 4
2 3
3 5
4 5
5 6
2
2 5

Limitation

1s, 1024KiB for each test case.