AngryBacon 是 ALU(反萝莉控联盟)的国王,他用武力统治着一个拥有 $n$ 座城市的王国。每座城市都有一个参数 $w_i$ 来描述城市规模。当且仅当 $w_i + w_j \ge d$ 时,城市 $i$ 和城市 $j$ 之间有一条道路,其中 $d$ 是一个已知的常数。
一天晚上,AngryBacon 做了一个可怕的噩梦,梦见他的一些城市因为他不喜欢萝莉而反叛,而有些人认为萝莉是天使,于是王国分裂成了两半:国王阵营和叛军阵营。所有属于不同阵营的城市之间的道路都被摧毁了。叛军装备了先进的数据结构,他的军队甚至无法抵挡。ALU 很快陷落,变成了一片共和国与萝莉的土地。
醒来后,AngryBacon 意识到这只是一个不可能成真的梦,他开始计算在这种情况下可能被摧毁的道路的最大数量。此外,如果任意城市集合(甚至是整个王国或空集)都可能同时反叛,那么有多少种不同的情况可以达到这个最大数量。
输入格式
第一行包含两个整数 $n, d$ ($1 \le n \le 2000, 0 \le d \le 10^9$)。$n$ 是城市数量,$d$ 是决定城市间连接关系的常数。
第二行包含 $n$ 个整数 $w_1, w_2, \dots, w_n$ ($0 \le w_i \le 10^9$)。$w_i$ 是第 $i$ 座城市的参数。
输出格式
输出一行,包含两个整数 $m$ 和 $w$,其中 $m$ 表示可能被摧毁的道路的最大数量,$w$ 表示有多少种情况可以达到这个数量。
样例
样例输入 1
4 7 1 4 6 3
样例输出 1
3 6
样例输入 2
4 11 1 4 6 3
样例输出 2
0 16
样例输入 3
4 5 1 4 6 3
样例输出 3
4 2