2153 - min
描述

梦梦给出了长度为nn的序列 aa和一个正整数 kk

梦梦可以进行kk次操作,每次操作,梦梦需要选择一个下标i[1,n]i∈[1,n],让aia_i变成2ai2a_i

请你告诉梦梦,kk次操作以后a1+a2++ana_1+a_2+\dots+a_n的值最小可以是多少,由于答案可能很大,你需要输出答案对109+710^9+7取模。


输入

第一行,两个正整数n,kn,k

第二行,给定nn个正整数a1,a2,,ana_1,a_2,\dots,a_n


输出

输出一行,包含输出一个整数,表示答案。

样例

输入
复制

3 3
7 2 1

输出
复制

15

输入
复制

10 10
2 3 4 5 6 7 8 9 10 11

输出
复制

118

输入
复制

10 1000000
2 3 4 5 6 7 8 9 10 11

输出
复制

855687435
提示

对于20%20\%的数据,1n,k101\leq n,k \leq 10

对于40%40\%的数据,1n,k1031\leq n,k \leq 10^3

对于100%100\%的数据,1n1051\leq n \leq 10^5,1k1091\leq k \leq 10^9,1ai1091\leq a_i \leq 10^9


题目参数
时间限制 1 秒
内存限制 256 MB
提交次数 92
通过次数 13