import java.util.*;

public class Main {

    // Function to compute max profit for one test case
    public static int maximizeValue(int N, int X, int C, int[] A) {

        // Invalid input checks
        if (N < 1 || C > X) return -1;
        for (int i = 0; i < N; i++) {
            if (A[i] < 1 || A[i] > X) return -1;
        }

        int sum = 0;
        int cost = 0;

        for (int i = 0; i < N; i++) {
            int gain = X - A[i];

            // Upgrade only if beneficial
            if (gain > C) {
                sum += X;   // set to X
                cost += C;  // pay cost
            } else {
                sum += A[i]; // keep original
            }
        }

        return sum - cost;
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int T = sc.nextInt();

        while (T-- > 0) {
            int N = sc.nextInt();
            int X = sc.nextInt();
            int C = sc.nextInt();

            int[] A = new int[N];
            for (int i = 0; i < N; i++) A[i] = sc.nextInt();

            int result = maximizeValue(N, X, C, A);

            if (result == -1) {
                System.out.println("Invalid input");
            } else {
                System.out.println(result);
            }
        }
    }
}
