                                              //"IN THE NAME OF ALLAH"//



#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
typedef unsigned long long ull;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<vi> vvi;
typedef vector<vl> vvl;
typedef pair<int,int> pii;
typedef pair<double,double> pdd;
typedef pair<ll,ll> pll;
typedef vector<pii> vii;
typedef vector<pll> vll;
#define sa(v) sort(v.begin(),v.end())
#define sd(v) sort(v.begin(),v.end(),greater<>())

// --------------------------------------------------------------------------------------------------------------->

#define el << '\n'
#define pb push_back
#define PI 3.141592653589793238
#define _test_ int _ ; cin >> _ ; while( _-- )
#define optimize() ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0)
#define file() freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout)

// --------------------------------------------------------------------------------------------------------------->

int dx[]={0,0,+1,-1,+1,-1,-1,+1};
int dy[]={+1,-1,0,0,+1,-1,+1,-1};
const ll infLL = 1e18;
const ll inf = 1e16+7;
const ll mod = 1e9+7;
const ll mx = 1e5+1;

// --------------------------------------------------------------------------------------------------------------->
int n,x;

void _case_()
{
    cin >> n >> x ;
    vi a(n),b(n);
    int sum=0;
    bool bl=false;
    for(int i=0;i<n;i++)
    {
        cin >> a[i];
        if(a[i]!=x) bl=true;
        sum+=a[i];
    }
    if(sum==x or !bl ) cout << "NO\n";
    else if(x>sum) 
    {
        cout << "YES\n";
        for(auto i:a) cout << i << " ";
        cout el;
    }
    else 
    {
        cout << "YES\n";
        sort(a.begin(),a.end());
        b[0]=a[0];
        for(int i=1;i<n;i++)
            b[i]=b[i-1]+a[i];
        for(int i=0;i<n;i++)
        {
            if(b[i]==x)
            {
                int temp=a[i];
                if(temp==a[n-1])
                {
                    int t=a[i-1];
                    a[i-1]=a[n-1];
                    a[n-1]=t;
                }
                else 
                {
                    a[i]=a[n-1];
                    a[n-1]=temp;
                }
                break;
            }
            
        }    
        for(auto i:a) cout << i << " ";
        cout el;
    }
}

int main()
{
    optimize();
    _test_
        _case_();
    return 0;
}
//                                                                                                    _𝓷𝓸𝓸𝓫𝓶𝓪𝓼𝓽𝓮𝓻_