#include using namespace std; #define pb push_back const int maxi=1e6+10; int a[maxi]; vector v[maxi]; long long n; string s; int q; long long b1,c1,s1,b2,c2,s2; long long rez[maxi]; long long seq(long long b, long long c, long long s, long long val) { c-=val; if ((b*b)/(4.00)x2) return 0; if (s>x2) return 0; if (s<=x1) { if (x2-x1>=1e9) return 1000000000; else return (long long) (x2-x1+1); } if (x2-s>=1e9) return 1000000000; else return (long long) (x2-s+1); } void print() { freopen("sequences.out","w",stdout); for (int i=1;i<=q;i++) printf("%lld\n",rez[i]); fclose(stdout); } void solve(int query) { long long l = -4e18-1e10; long long r= 4e18+1e10; for (int i=0;i<=60;i++) { long long mid = (l+r)/2; if (seq(b1,c1,s1,mid)+seq(b2,c2,s2,mid)>=n) r = mid; else l = mid; } rez[query] = r; } void read() { freopen("sequences.in","r",stdin); cin>>q; for (int i=1;i<=q;i++) { scanf("%lld%lld%lld%lld%lld%lld%lld",&b1,&c1,&s1,&b2,&c2,&s2,&n); solve(i); } fclose(stdin); } int main() { read(); print(); return 0; }