人们曾认为围棋是最后一项计算机与人类竞争变得毫无意义的领域,因为人类会遭到惨败。然而,AlphaGo 的出现粉碎了围棋界的希望,李世石现在正在寻找与他人进行某种竞技的新方式。他想出了一种随机版的围棋游戏,不需要任何思考,只需要纯粹的运气。此外,这个新游戏是单人游戏!
考虑一个周长为整数 $l$ 的圆。在圆周上引入一个坐标系,使得圆周上的任意一点都被赋予一个实数值 $x$,$0 \le x < l$。给定圆周上的 $n$ 个不同点,第 $i$ 个点的坐标为 $x_i$。
游戏过程非常简单。玩家抛掷一枚公平的硬币 $n$ 次,并根据每次抛掷的结果将每个点涂成红色或蓝色。因此,所有点都被独立且等概率地分配为这两种颜色之一。然后,玩家绘制所有红点的凸包和所有蓝点的凸包。回想一下,有限点集的凸包是包含所有点或使其位于其边界上的最小凸多边形。
如果圆心是两个凸包的一部分(位于内部或边界上),则玩家获胜。在抛硬币开始前,你已知游戏的参数。计算获胜的概率。
输入格式
第一行包含两个整数 $n$ ($1 \le n \le 1\,000\,000$) 和 $l$ ($n \le l \le 10^9$)。
接下来一行包含 $n$ 个整数 $x_1, x_2, \dots, x_n$ ($0 \le x_i < l, x_i \neq x_j$ 当 $i \neq j$ 时),描述了圆周上各点的位置。
输出格式
保证获胜的概率可以表示为不可约分数 $\frac{p}{q}$,其中 $q$ 与 $10^9 + 7$ 互质。你的目标是找到一个整数 $r$ ($0 \le r < 10^9 + 7$),使得 $r \cdot q \equiv p \pmod{10^9 + 7}$。
样例
样例输入 1
4 100 0 30 50 80
样例输出 1
125000001
样例输入 2
8 100 1 12 34 45 51 84 88 92
样例输出 2
515625004
说明
第一个测试用例的概率为 $\frac{1}{8}$,第二个测试用例的概率为 $\frac{25}{64}$。