#687. 鹅鸭杀

鹅鸭杀

Description

毕老师有 nn 个喜欢玩鹅鸭杀的朋友,编号为 1n1 \sim n

假期时,大家常会在群里询问是否有人一起玩鹅鸭杀,并报出当前已参与的人数。每个人对是否加入游戏都有自己的条件: 对于第 ii 个人,如果当前已经加入游戏的人数处于区间 [li,ri][l_i, r_i] 之间,那么 ta 就愿意加入游戏

你希望参与游戏的人尽可能多,因此需要安排一个加入顺序,使得最终加入游戏的人数达到最大值。

Format

Input

第一行输入一个整数 n (1n106)n\ (1 \le n \le 10^6),表示朋友的总人数。 接下来 nn 行,每行输入两个由空格分隔的整数 li,ri (0li,ri106)l_i, r_i\ (0 \le l_i, r_i \le 10^6),表示第 ii 个人的加入条件。

Output

第一行输出一个非负整数 mm,表示最多能有多少个人加入游戏。 接下来一行输出 mm 个由空格分隔的整数 pip_i,表示按顺序加入游戏的人的编号(第 ii 个数为第 ii 个加入游戏的人)。 若存在多种满足条件的方案,输出任意一种即可。

Samples

5
2 5
4 4
0 2
0 2
1 4
5
4 3 5 1 2

Limitation

1s, 1024KiB for each test case.