/* Don't try to hack it :|
_/﹋\_
(҂`_´)
<,︻╦╤─҉- - - - - - - - - - - - - - -
_/﹋\_
*/
//@Yuvraj Garg
#include <bits/stdc++.h>
#define ull unsigned long long int
#define ll long long int
#define vi vector<int>
#define vll vector<ll>
#define vvi vector < vi >
#define pii pair<int,int>
#define pll pair<long long, long long>
#define itr vi::iterator
#define vpll vector < pair<long long,long long> >
#define mod 1000000007
#define inf 1000000000000000001
#define all(c) c.begin(),c.end()
#define mp make_pair
#define pb push_back
#define eb emplace_back
#define f first
#define s second
#define pdd pair<double, double>
#define foo() cout << "Err\n"
#define rep(i, n) for(ll i = 0; i < (n); ++i)
#define repA(i, a, n) for(ll i = a; i <= (n); ++i)
#define repD(i, a, n) for(ll i = a; i >= (n); --i)
using namespace std;
ll min(ll a, ll b){
if(a > b) return b;
else return a;
}
void solve(int t){
ll n, a, b;
cin >> n >> a >> b;
string s;
cin >> s;
vll idx;
rep(i, s.length()) if(s[i]-'0') idx.pb(i);
ll cost = 0;
rep(i, idx.size()-1){
if(idx[i+1]-idx[i] > 2) cost += min((a+2*b)*(idx[i+1]-idx[i]), (a+b)*(idx[i+1]-idx[i]+2));
else cost += (a+b)*(idx[i+1]-idx[i]);
}
ll mn = idx.size()-1;
cost += a*(n+2+idx[0]-idx[mn])+b*(n+3+idx[0]-idx[mn]);
cout << cost;
}
int main(){
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif
int t, tmp = 0;
cin >> t;
// t = 1;
while(tmp++ < t){
// cout << "Case #" << tmp << ": ";
solve(tmp-1);
// free();
if(t-tmp) cout << "\n";
}
cerr << "Time : " << (double)clock() / (double)CLOCKS_PER_SEC << "s\n";
return 0;
}
LyogRG9uJ3QgdHJ5IHRvIGhhY2sgaXQgOnwKCiAgICAgICAgICAgIF8v77mLXF8KICAgICAgICAgICAgKNKCYF/CtCkKICAgICAgICAgICAgPCzvuLvilabilaTilIDSiS0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtCiAgICAgICAgICAgIF8v77mLXF8KKi8KLy9AWXV2cmFqIEdhcmcKCiNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPgoKI2RlZmluZSB1bGwgdW5zaWduZWQgbG9uZyBsb25nIGludAojZGVmaW5lIGxsIGxvbmcgbG9uZyBpbnQKI2RlZmluZSB2aSB2ZWN0b3I8aW50PgojZGVmaW5lIHZsbCB2ZWN0b3I8bGw+CiNkZWZpbmUgdnZpIHZlY3RvciA8IHZpID4KI2RlZmluZSBwaWkgcGFpcjxpbnQsaW50PgojZGVmaW5lIHBsbCBwYWlyPGxvbmcgbG9uZywgbG9uZyBsb25nPgojZGVmaW5lIGl0ciB2aTo6aXRlcmF0b3IKI2RlZmluZSB2cGxsIHZlY3RvciA8IHBhaXI8bG9uZyBsb25nLGxvbmcgbG9uZz4gPgojZGVmaW5lIG1vZCAxMDAwMDAwMDA3CiNkZWZpbmUgaW5mIDEwMDAwMDAwMDAwMDAwMDAwMDEKI2RlZmluZSBhbGwoYykgYy5iZWdpbigpLGMuZW5kKCkKI2RlZmluZSBtcCBtYWtlX3BhaXIKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBlYiBlbXBsYWNlX2JhY2sKI2RlZmluZSBmIGZpcnN0CiNkZWZpbmUgcyBzZWNvbmQKI2RlZmluZSBwZGQgcGFpcjxkb3VibGUsIGRvdWJsZT4KI2RlZmluZSBmb28oKSBjb3V0IDw8ICJFcnJcbiIKCiNkZWZpbmUgcmVwKGksIG4pICAgIGZvcihsbCBpID0gMDsgaSA8IChuKTsgKytpKQojZGVmaW5lIHJlcEEoaSwgYSwgbikgIGZvcihsbCBpID0gYTsgaSA8PSAobik7ICsraSkKI2RlZmluZSByZXBEKGksIGEsIG4pICBmb3IobGwgaSA9IGE7IGkgPj0gKG4pOyAtLWkpCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKbGwgbWluKGxsIGEsIGxsIGIpewoJaWYoYSA+IGIpIHJldHVybiBiOwoJZWxzZSByZXR1cm4gYTsKfQoKdm9pZCBzb2x2ZShpbnQgdCl7CiAgICBsbCBuLCBhLCBiOwogICAgY2luID4+IG4gPj4gYSA+PiBiOwogICAgc3RyaW5nIHM7CiAgICBjaW4gPj4gczsKICAgIHZsbCBpZHg7CiAgICByZXAoaSwgcy5sZW5ndGgoKSkgaWYoc1tpXS0nMCcpIGlkeC5wYihpKTsKICAgIGxsIGNvc3QgPSAwOwogICAgcmVwKGksIGlkeC5zaXplKCktMSl7CiAgICAJaWYoaWR4W2krMV0taWR4W2ldID4gMikgY29zdCArPSBtaW4oKGErMipiKSooaWR4W2krMV0taWR4W2ldKSwgKGErYikqKGlkeFtpKzFdLWlkeFtpXSsyKSk7CiAgICAJZWxzZSBjb3N0ICs9IChhK2IpKihpZHhbaSsxXS1pZHhbaV0pOwogICAgfQogICAgbGwgbW4gPSBpZHguc2l6ZSgpLTE7CiAgICBjb3N0ICs9IGEqKG4rMitpZHhbMF0taWR4W21uXSkrYioobiszK2lkeFswXS1pZHhbbW5dKTsKICAgIGNvdXQgPDwgY29zdDsKfQoKaW50IG1haW4oKXsKCiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbygwKTsKICAgIGNpbi50aWUoMCk7IGNvdXQudGllKDApOwogICAgI2lmbmRlZiBPTkxJTkVfSlVER0UKICAgICAgICBmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAgICAgICBmcmVvcGVuKCJvdXRwdXQudHh0IiwgInciLCBzdGRvdXQpOwogICAgI2VuZGlmCiAgICBpbnQgdCwgdG1wID0gMDsKICAgIGNpbiA+PiB0OwogICAgLy8gdCA9IDE7CiAgICB3aGlsZSh0bXArKyA8IHQpewogICAgICAgIC8vIGNvdXQgPDwgIkNhc2UgIyIgPDwgdG1wIDw8ICI6ICI7CiAgICAgICAgc29sdmUodG1wLTEpOwogICAgICAgIC8vIGZyZWUoKTsKICAgICAgICBpZih0LXRtcCkgY291dCA8PCAiXG4iOwogICAgfQogICAgY2VyciA8PCAiVGltZSA6ICIgPDwgKGRvdWJsZSljbG9jaygpIC8gKGRvdWJsZSlDTE9DS1NfUEVSX1NFQyA8PCAic1xuIjsKICAgIHJldHVybiAwOwp9Cg==