bobo 有一个序列 $a_1, a_2, \dots, a_n$。他想选择 $k$ 个连续的元素,并最大化值 $S$,其中 $S$ 定义为这些元素的最大值与按位或(bitwise OR)之和。
对于所有 $1 \le k \le n$,求出 bobo 能达到的最大值 $S$。
输入格式
第一行包含一个整数 $n$ ($1 \le n \le 10^5$)。
第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$ ($0 \le a_i < 2^{16}$)。
输出格式
输出 $n$ 个整数,其中第 $i$ 个整数表示当 $k = i$ 时的最大值 $S$。
样例
样例输入 1
3 1 0 2
样例输出 1
4 4 5