#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define fi first
#define se second
const int N=1e5+3;
int n;
ll a[N];
ll pf[N];
ll s,t;
bool vis[N];
bool check(ll x){
if(s%x!=0) return false;
for(int i=1; i<=n ;i++) vis[i]=false;
for(int i=1; i<=n ;i++){
if(a[i]%x==0 || a[i]%x>n || vis[a[i]%x]) return false;
vis[a[i]%x]=true;
}
return true;
}
ll f(ll x){
while(x<=n) x*=2;
return x;
}
void solve(){
// custom n = 100000
n=100000;
//Let sum(a[i]-i) = s
s=963761198400;
//predefine a just to fill in array
for(int i=0;i<=n;i++)
a[i]=i+1;
a[n-1]=a[n-2];
if(s==0){cout << "YES\n";return;}
t=s;
int c=0;
while(t%2==0) t/=2;
for(ll i=1; i*i<=s ;i++){
if(s%i!=0) continue;
c++;
ll x=f(i),y=f(s/i);
if(check(x)){cout << "YES " << x << '\n';return;}
if(check(y)){cout << "YES " << y << '\n';return;}
}
cout<<"Divisors: "<<c<<endl;
cout << "NO\n";
}
int main(){
ios::sync_with_stdio(false);cin.tie(0);
int t;cin >> t;
while(t--) solve();
//solve();
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdHlwZWRlZiBsb25nIGxvbmcgbGw7CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKY29uc3QgaW50IE49MWU1KzM7CmludCBuOwpsbCBhW05dOwpsbCBwZltOXTsKbGwgcyx0Owpib29sIHZpc1tOXTsKYm9vbCBjaGVjayhsbCB4KXsKCWlmKHMleCE9MCkgcmV0dXJuIGZhbHNlOwoJZm9yKGludCBpPTE7IGk8PW4gO2krKykgdmlzW2ldPWZhbHNlOwoJZm9yKGludCBpPTE7IGk8PW4gO2krKyl7CgkJaWYoYVtpXSV4PT0wIHx8IGFbaV0leD5uIHx8IHZpc1thW2ldJXhdKSByZXR1cm4gZmFsc2U7CgkJdmlzW2FbaV0leF09dHJ1ZTsKCX0KCXJldHVybiB0cnVlOwp9CmxsIGYobGwgeCl7Cgl3aGlsZSh4PD1uKSB4Kj0yOwoJcmV0dXJuIHg7Cn0Kdm9pZCBzb2x2ZSgpewoJCgkvLyBjdXN0b20gbiA9IDEwMDAwMAoJbj0xMDAwMDA7CgkKCS8vTGV0IHN1bShhW2ldLWkpID0gcyAKCXM9OTYzNzYxMTk4NDAwOwoJCgkvL3ByZWRlZmluZSBhIGp1c3QgdG8gZmlsbCBpbiBhcnJheQoJZm9yKGludCBpPTA7aTw9bjtpKyspCglhW2ldPWkrMTsKCWFbbi0xXT1hW24tMl07CglpZihzPT0wKXtjb3V0IDw8ICJZRVNcbiI7cmV0dXJuO30KCXQ9czsKCWludCBjPTA7Cgl3aGlsZSh0JTI9PTApIHQvPTI7Cglmb3IobGwgaT0xOyBpKmk8PXMgO2krKyl7CgkJaWYocyVpIT0wKSBjb250aW51ZTsKCQkJYysrOwoJCWxsIHg9ZihpKSx5PWYocy9pKTsKCQlpZihjaGVjayh4KSl7Y291dCA8PCAiWUVTICIgPDwgeCA8PCAnXG4nO3JldHVybjt9CgkJaWYoY2hlY2soeSkpe2NvdXQgPDwgIllFUyAiIDw8IHkgPDwgJ1xuJztyZXR1cm47fQoJfQoJY291dDw8IkRpdmlzb3JzOiAiPDxjPDxlbmRsOwoJY291dCA8PCAiTk9cbiI7Cn0KaW50IG1haW4oKXsKCWlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTtjaW4udGllKDApOwoJaW50IHQ7Y2luID4+IHQ7Cgl3aGlsZSh0LS0pIHNvbHZlKCk7CgkvL3NvbHZlKCk7Cn0=