B. Офшоры
ограничение по времени на тест
1.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Марк очень любит деньги. Большую часть из них он хранит в банке. При этом Марк хранит деньги в $$$n$$$ разных банках. В $$$i$$$-м банке у него хранится $$$a_i$$$ рублей.

В один день Марк решил собрать все свои деньги в каком-то одном банке, для этого он будет переводить деньги со счёта одного банка на счёт другого. При этом все межбанковские переводы устроены одинаково: переводить можно только по $$$x$$$ рублей за один перевод, и с учётом всех комиссий на другой счёт будет зачислено $$$y$$$ рублей (так как банки хотят зарабатывать, то выполняется $$$y \leq x$$$).

Возможно, Марк не сможет перевести все свои деньги в один банк, но он хочет найти максимальное количество рублей, которые могут оказаться в каком-либо банке.

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит три целых числа $$$n$$$, $$$x$$$ и $$$y$$$ ($$$2 \le n \le 2 \cdot 10^5$$$, $$$1 \le y \le x \le 10^9$$$) — количество банков, сумма перевода и сумма зачисления.

Вторая строка каждого набора входных данных содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — изначальное количество рублей в каждом банке.

Гарантируется, что сумма значений $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$.

Выходные данные

Для каждого набора входных данных выведите единственное число — максимальное количество рублей, которое можно получить в каком-либо банке.

Пример
Входные данные
6
4 5 4
10 9 8 7
5 13 11
47 52 64 13 91
2 1 1
1000 1000
3 15 14
34 43 52
6 7 6
15 17 14 15 12 16
2 15 10
45 44
Выходные данные
25
229
2000
113
72
74
Примечание

В первом наборе входных данных оптимальная последовательность переводов может выглядеть следующим образом: $$$$$$ 1\to4,\; 1\to4,\; 4\to3,\; 4\to3,\; 4\to3,\; 3\to2,\; 3\to2,\; 3\to2,\; 3\to2. $$$$$$ Покажем изменения сумм после каждого шага: $$$$$$ (10,9,8,7) $$$$$$ $$$$$$ \xrightarrow{1\to4} (5,9,8,11) \xrightarrow{1\to4} (0,9,8,15) $$$$$$ $$$$$$ \xrightarrow{4\to3} (0,9,12,10) \xrightarrow{4\to3} (0,9,16,5) \xrightarrow{4\to3} (0,9,20,0) $$$$$$ $$$$$$ \xrightarrow{3\to2} (0,13,15,0) \xrightarrow{3\to2} (0,17,10,0) \xrightarrow{3\to2} (0,21,5,0) \xrightarrow{3\to2} (0,25,0,0). $$$$$$

В итоге в некотором банке (а именно во втором) можно получить $$$25$$$ рублей, и это значение является ответом для данного набора входных данных.

В третьем наборе входных данных можно $$$1000$$$ раз перевести один рубль из первого банка во второй и получить $$$2000$$$ рублей во втором банке.