#include #define x first #define y second using namespace std; using ll=long long; using pii=pair; using vi=vector; using vl=vector; #define pb push_back #define all(a) begin(a),end(a) const int N=300010,MOD=1e9+7; const char en='\n'; const ll LLINF=1ll<<60; int t,n,na,nb,nc; ll h[N]; ll getS(vl v) { ll s=0; for (auto x: v) s+=x; return s; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin>>t; while (t--) { cin>>n>>na>>nb>>nc; ll s=0; for (int i=0;i>h[i],s+=h[i]; ll toomuch=(s+1)/2; sort(h,h+n); reverse(h,h+n); vector ns; ns.pb({na,0}); ns.pb({nb,1}); ns.pb({nc,2}); sort(all(ns)); na=ns[0].x; nb=ns[1].x; nc=ns[2].x; ll sa=h[0],sc=0; for (int i=n-na+1;i=toomuch || sc>=toomuch) { cout<<"NO\n"; continue; } cout<<"YES\n"; vl va,vb,vc; int cv=1; while (cv