#include <bits/stdc++.h>
using namespace std;
bool isPrime[100000 + 1] = {true};
void sieve() {
  isPrime[0] = false;
  isPrime[1] = false;
  for (int i = 2; i * i <= 100000; ++i) {
    if (isPrime[i] == true) {
      for (int j = i * i; j <= 100000; j += i) isPrime[j] = false;
    }
  }
}
bool is_Prime(int n) {
  if (n <= 1) return false;
  for (int i = 2; i < n; i++)
    if (n % i == 0) return false;
  return true;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  sieve();
  int t;
  cin >> t;
  while (t--) {
    int n;
    cin >> n;
    int c0, c1, h;
    cin >> c0 >> c1 >> h;
    string s;
    cin >> s;
    if (c0 == c1) {
      cout << n * c0 << endl;
    } else if (c0 > c1) {
      int count0 = 0, count1 = 0;
      for (int i = 0; i < n; i++) {
        if (s[i] == '0') count0++;
        if (s[i] == '1') count1++;
      }
      cout << min(c1 * n + h * count0, c0 * count0 + c1 * count1) << endl;
    } else {
      int count0 = 0, count1 = 0;
      for (int i = 0; i < n; i++) {
        if (s[i] == '0') count0++;
        if (s[i] == '1') count1++;
      }
      cout << min(c0 * n + h * count1, c0 * count0 + c1 * count1) << endl;
    }
  }
  return 0;
}
