#Lutece3341. Add & Mul

Add & Mul

Description

给定函数 f(x)=axf(x) = a\cdot xg(x)=x+bg(x) = x + b

将这两个函数任意嵌套 mm 次将得到 2m2^m 种不同的函数。

m=3m = 3 时将得到函数:

  • h1=fffh_1 = f \cdot f \cdot f
  • h2=ffgh_2 = f \cdot f \cdot g
  • h3=fgfh_3 = f \cdot g \cdot f
  • h4=fggh_4 = f \cdot g \cdot g
  • h5=gffh_5 = g \cdot f \cdot f
  • h6=gfgh_6 = g \cdot f \cdot g
  • h7=ggfh_7 = g \cdot g \cdot f
  • h8=gggh_8 = g \cdot g \cdot g

现在给出一个数字 xx,lyc 想知道随机从这 2m2^m 个函数中等概率抽取一个函数 hhE(h(x))\mathbb{E}(h(x)) 是多少。

lyc 不满足只求出一个整数的答案,他有 nn 个数字 x1,x2,,xnx_1, x_2,\cdots,x_n,对每个数字他想知道从 2m2^m 个函数中抽取一个函数得到 h(xi)h(x_i) 的期望大小是多少。

Input

第一行包含两个实数 a,b (0<a,b109)a,b\ (0 < a,b \leq 10^9),含义见题面。

第二行包含两个整数 n,m (0n,m105)n,m\ (0\leq n,m \leq 10^5),含义见题面。

第三行包含 nn 个整数 x1,x2,,xn (0xi109)x_1,x_2,\cdots,x_n\ (0\leq x_i\leq 10^9),含义见题面。

保证 am1020a^m \leq 10^{20}

Output

输出一行 nn 个实数,第 ii 个数表示 E(h(xi))\mathbb{E}(h(x_i))

你的输出结果与标准答案的相对误差或绝对误差应小于 10610^{-6}。即如果标准答案是 bb,那你的输入答案 aa 应该满足条件 bamax(1,b)106\frac{\lvert b-a \rvert }{\max(1,b)}\leq {10^{-6}}

Samples

2 1
2 2
1 2
3.500000000 5.750000000

Note

第一个样例中函数有 44 个函数 h1(x)=f(f(x))=4xh_1(x) = f(f(x)) = 4xh2(x)=f(g(x))=2x+2h_2(x)=f(g(x))=2x + 2h3(x)=g(f(x))=2x+1h_3(x)=g(f(x))=2x + 1h4(x)=g(g(x))=x+2h_4(x)=g(g(x))=x+2

第一个样例中第二个数字 22 得到的 h(x)h(x) 分别为 8,6,5,48,6,5,4,大小期望为 5.755.75

Resources

电子科技大学第十五届 ACM 趣味程序设计竞赛