#include <bits/stdc++.h>
using namespace std;
void FAST() {
  std::ios_base::sync_with_stdio(false);
  cin.tie(NULL);
}
void solve() {}
bool cmp(string s, string t) {
  int x = s.compare(t);
  if (x <= 0) return 1;
  return 0;
}
int main() {
  FAST();
  int t;
  cin >> t;
  while (t--) {
    long long n, x, y;
    cin >> n >> x >> y;
    string s;
    cin >> s;
    int arr[n + 1];
    arr[0] = 1;
    for (int first = 0; first <= n; ++first) {
      if (s[first] == '1')
        arr[first - 1] = arr[first] = 2;
      else
        arr[first] = 1;
    }
    long long cost = n * x;
    long long n2 = 0, n1 = 0, start = -1;
    for (int first = 0; first <= n; ++first) {
      if (arr[first] == 2) {
        n2++;
        start = first;
      } else
        n1++;
      if (arr[first] == 1) {
        n1--;
        while (first <= n && arr[first] == 1) {
          n1++;
          ++first;
        }
        if (first < n && start != -1)
          cost += min(2 * x, (first - start - 1) * y);
        --first;
      }
    }
    cost += (2 * n2 + n1) * y;
    if (n2 > 0) cost += 2 * x;
    cout << cost << "\n";
  }
  return 0;
}
