XOR Inverse

给你一个有 nn 个非负整数组成的数组 aa ,你需要选择一个非负整数 xx,对数组 aa 的每一个 aia_ixx 进行异或后形成新的数组 bb,要求 bb 数组的逆序对个数最小,如果有多个 xx 满足条件,输出最小的 xx

一个逆序对指 bb 数组内对于整数 i,ji,j 满足条件 1i<jn1\leq i < j \leq nbi>bjb_i > b_j

输入格式

第一行一个正整数 nn

接下来一行 nn 个非负整数 a1,a2,,ana_1,a_2,\dots,a_n

输出格式

两个数:bb 数组的最小逆序对数和此时 xx 的最小值。

样例输入#1

4
0 1 3 2

样例输出#1

1 0

样例输入#2

9
10 7 9 10 7 5 5 3 5

样例输出#2

4 14

样例输入#3

3
8 10 3

样例输出#3

0 8

数据范围

1n3105 1\leq n\leq 3\cdot 10^5 0ai109 0\leq a_i\leq 10^9