lib C;fun strtoll(s: UInt8*,p: UInt8**,b: Int32): Int64;end class String;def to_i64;C.strtoll(self,nil,10);end;end struct Int def pow(n : Int, mod = nil ) : Int a = to_i64 res = 1_i64 while n > 0 if (n & 1) != 0 res *= a res %= mod if mod end a *= a a %= mod if mod n >>= 1 end res end end mod = 998244353 n, k = gets.to_s.split.map{ |e| e.to_i64 } a = gets.to_s.split.map{ |e| e.to_i64 } p a.sum * 2i64.pow(k, mod) % mod