#CF467E. E. Alex 与复杂任务

E. Alex 与复杂任务

E. Alex 与复杂任务

时间限制:2 秒
内存限制:256 兆字节

你可能已经读完了所有题目,想必觉得 Alex 是个天才。这没错!有一天他想出了下面这个任务。

给定一个整数序列 a1,a2,,ana_1, a_2, \dots, a_n。你需要找到一个最长的序列 b1,b2,,b4mb_1, b_2, \dots, b_{4m},满足以下条件:

  • 对于所有合法的整数 kk,有 b4k+1=b4k+3b_{4k+1} = b_{4k+3}
  • 对于所有合法的整数 kk,有 b4k+2=b4k+4b_{4k+2} = b_{4k+4}
  • 序列 bbaa 的子序列(不一定连续)。

最终……Alex 把这个复杂任务交给了 George,而 George 又交给了你。帮助 George 完成这个任务吧。

输入

第一行包含一个整数 nn1n51051 \le n \le 5 \cdot 10^5)。
第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n1ai1091 \le a_i \le 10^9)。

输出

第一行输出一个整数 4m4m —— 所求序列 bb 的最大可能长度。
第二行输出 4m4m 个整数 b1,b2,,b4mb_1, b_2, \dots, b_{4m},即所求的序列。

如果有多个最优答案,你可以输出任意一个。

示例

示例输入 1

4
3 5 3 5

示例输出 1

4
3 5 3 5

示例输入 2

10
35 1 2 1 2 35 100 200 100 200

示例输出 2

8
1 2 1 2 100 200 100 200