#include <bits/stdc++.h>
#define ll long long
#define nl '\n'
#define vpn 1000000
using namespace std;
ll t,n,dismin;
ll a[vpn],b[vpn];
ll gcd(ll x, ll y)
{
    if (y==0) return x;
    return gcd(y,x%y);
}
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cin>>t;
    while (t--)
    {
        cin>>n;
        for(ll i=1;i<=n;i++)
            cin>>a[i];
        sort(a+1,a+n+1);
        if (a[1]<0) cout<<"NO"<<nl;
        else
        {
            if (a[n]<=300)
            {
                cout<<"YES"<<nl;
                if (a[1]!=0)
                {
                    cout<<a[n]<<nl;
                for (ll i=1;i<=a[n];i++)
                    cout<<i<<" ";
                }
                else
                {
                    cout<<a[n]+1<<nl;
                    for (ll i=0;i<=a[n];i++)
                        cout<<i<<" ";
                }
                cout<<nl;
            }
            else
            {
                bool ans=true;
                vector<ll> dis;
                for (ll i=2;i<=n;i++)
                    dis.push_back(a[i]-a[i-1]);
                ll pos;
                pos=dis[0];
                for (ll i=1;i<dis.size();i++)
                {
                    pos=gcd(pos,dis[i]);
                    if (pos==1)
                    {
                        cout<<"NO"<<nl;
                        ans=false;
                        break;
                    }
                }
                if (ans==true)
                {
                    if (((a[n]-pos)/pos+1)>300) cout<<"NO"<<nl;
                    else
                    {
                        cout<<"YES"<<nl;
                        if (a[1]==0)
                        {
                            cout<<((a[n]-pos)/pos+2)<<nl;
                            cout<<a[1]<<" ";
                        }
                        else cout<<((a[n]-pos)/pos+1)<<nl;
                        for (ll i=pos;i<=a[n];i+=pos)
                            cout<<i<<" ";
                        cout<<nl;
                    }
                }
            }
        }
    }
}
