#include <bits/stdc++.h>
using namespace std;
const long long inf = 1e16;
long long T, a1, a2, a3, a[101], ans, x, y;
signed main() {
  cin >> T;
  for (long long i = 1; i <= T; i++) {
    cin >> x >> y;
    if (x > 0) {
      if (y > 0) {
        a1 = 6, a2 = 2, a3 = 1;
      } else
        a1 = 6, a2 = 5, a3 = 7;
    } else {
      if (y > 0) {
        a1 = 3, a2 = 2, a3 = 8;
      } else
        a1 = 3, a2 = 5, a3 = 4;
    }
    x = abs(x);
    y = abs(y);
    for (long long j = 1; j <= 6; j++) {
      cin >> a[j];
    }
    a[7] = inf;
    a[8] = inf;
    a[2] = min(a[1] + a[3], a[2]);
    a[5] = min(a[4] + a[6], a[5]);
    a[6] = min(a[1] + a[5], a[6]);
    a[3] = min(a[2] + a[4], a[3]);
    a[1] = min(a[6] + a[2], a[1]);
    a[8] = min(a[2] + a[3], a[8]);
    a[4] = min(a[3] + a[5], a[4]);
    a[7] = min(a[6] + a[5], a[7]);
    ans = min(x, y) * a[a3];
    if (x > y) {
      ans += (x - y) * a[a1];
    } else
      ans += (y - x) * a[a2];
    cout << ans << endl;
  }
}
