#include <iostream>
#include <cstdio>
using namespace std;
unsigned int gcd(unsigned int u, unsigned int v) {
if(u==v) return u;
if(u==0) return v;
if(v==0) return u;
if(~u & 1) {
if(v & 1) return gcd(u>>1, v);
else return gcd(u>>1, v>>1) <<1;
}
if(~v & 1) return gcd(u, v>>1);
if(u>v) return gcd((u-v)>>1, v);
return gcd((v-u)>>1, u);
}
int main() {
int t, n, c[1005], a, b;
scanf("%d", &t);
while(t--) {
scanf("%d", &n);
if(n==1) { scanf("%d", &a); printf("%d\n", a); }
if(n==2) { scanf("%d %d", &a, &b); printf("%d\n", gcd(a, b)); }
if(n>2) {
for(int i=0; i<2; i++) {
scanf("%d %d", &a, &b); a=gcd(a, b); break;
}
for(int i=2; i<n; i++) {
scanf("%d", &b); a=gcd(a, b);
}
printf("%d\n", a);
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGlvPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdW5zaWduZWQgaW50IGdjZCh1bnNpZ25lZCBpbnQgdSwgdW5zaWduZWQgaW50IHYpIHsKCWlmKHU9PXYpIHJldHVybiB1OwoJaWYodT09MCkgcmV0dXJuIHY7CglpZih2PT0wKSByZXR1cm4gdTsKCWlmKH51ICYgMSkgewoJCWlmKHYgJiAxKSByZXR1cm4gZ2NkKHU+PjEsIHYpOwoJCWVsc2UgcmV0dXJuIGdjZCh1Pj4xLCB2Pj4xKSA8PDE7Cgl9CglpZih+diAmIDEpIHJldHVybiBnY2QodSwgdj4+MSk7CglpZih1PnYpIHJldHVybiBnY2QoKHUtdik+PjEsIHYpOwoJcmV0dXJuIGdjZCgodi11KT4+MSwgdSk7Cn0KCmludCBtYWluKCkgewoJaW50IHQsIG4sIGNbMTAwNV0sIGEsIGI7CglzY2FuZigiJWQiLCAmdCk7Cgl3aGlsZSh0LS0pIHsKCQlzY2FuZigiJWQiLCAmbik7CgkJaWYobj09MSkgeyBzY2FuZigiJWQiLCAmYSk7IHByaW50ZigiJWRcbiIsIGEpOyB9CgkJaWYobj09MikgeyBzY2FuZigiJWQgJWQiLCAmYSwgJmIpOyBwcmludGYoIiVkXG4iLCBnY2QoYSwgYikpOyB9CgkJaWYobj4yKSB7CgkJCWZvcihpbnQgaT0wOyBpPDI7IGkrKykgIHsKCQkJCXNjYW5mKCIlZCAlZCIsICZhLCAmYik7IGE9Z2NkKGEsIGIpOyBicmVhazsKCQkJfQoJCQlmb3IoaW50IGk9MjsgaTxuOyBpKyspIHsKCQkJCXNjYW5mKCIlZCIsICZiKTsgYT1nY2QoYSwgYik7IAoJCQl9CgkJCXByaW50ZigiJWRcbiIsIGEpOwoJCX0KCX0KCXJldHVybiAwOwp9