#include <iostream>
#include<bits/stdc++.h>
#define ll long long
using namespace std;
#define loop(n) for(int i=0;i<n;i++)
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t;
cin>>t;
while(t--)
{
ll n,k,i,mul=1,f;
cin>>n>>k;
ll a[n];
for(i=0;i<n;i++)
{
cin>>a[i];
mul*=a[i];
}
f=2023%mul;
if(f==0)
{
cout<<"YES\n";
for(i=1;i<k;i++)
{
cout<<1<<" ";
}
cout<<2023/mul<<endl;
}
else
cout<<"NO\n";
}
}
1712C - Sort Zero | 1028B - Unnatural Conditions |
735B - Urbanization | 746C - Tram |
1278B - A and B | 1353D - Constructing the Array |
1269C - Long Beautiful Integer | 1076A - Minimizing the String |
913C - Party Lemonade | 1313A - Fast Food Restaurant |
681A - A Good Contest | 1585F - Non-equal Neighbours |
747A - Display Size | 285A - Slightly Decreasing Permutations |
515C - Drazil and Factorial | 1151E - Number of Components |
1151F - Sonya and Informatics | 556A - Case of the Zeros and Ones |
867A - Between the Offices | 1569A - Balanced Substring |
260A - Adding Digits | 1698C - 3SUM Closure |
1029B - Creating the Contest | 1421A - XORwice |
1029A - Many Equal Substrings | 1675D - Vertical Paths |
1271C - Shawarma Tent | 805A - Fake NP |
1163A - Eating Soup | 787A - The Monster |