#include <bits/stdc++.h>   using namespace std;   bool isPrime(int n) {     if (n <= 1) {       return false;     }     for (int i = 2; i < n; i++) {       if (n % i == 0) {         return false;       }     }     return true;   }   vector<long long int> inisum;   long long int binary(long long int target) {     long long int end = inisum.size() - 1;     long long int start = 0;     long long int ans = -1;     while (start <= end) {       long long int mid = (start + end) / 2;       if (inisum[mid] <= target) {         start = mid + 1;       } else {         ans = mid;         end = mid - 1;       }     }     return ans;   }   bool isSum(long long int n) {     long long int sum = 0;     while (n != 0) {       sum += n % 10;       n /= 10;     }     if (sum == 10) {       return true;     } else {       return false;     }   }   int main(void) {     long long int t;     cin >> t;     while (t--) {       long long int x1, y1, z1;       long long int x2, y2, z2;       cin >> x1 >> y1 >> z1;       cin >> x2 >> y2 >> z2;       long long int count = 0;       if (z1 > y2) {         count += y2;         z1 -= y2;         y2 = 0;       } else {         count += z1;         y2 -= z1;         z1 = 0;       }       if (y1 > x2) {         y1 -= x2;         x2 = 0;       } else {         x2 -= y1;         y1 = 0;       }       if (y1 > y2) {         y1 -= y2;         y2 = 0;       } else {         y2 -= y1;         y1 = 0;       }       if (z1 > x2) {         z1 -= x2;         x2 = 0;       } else {         x2 -= z1;         z1 = 0;       }       if (z1 > y2) {         z1 -= y2;         y2 = 0;       } else {         y2 -= z1;         z1 = 0;       }       count -= min(y1, z2);       cout << count * 2 << endl;     }   }   