#include #pragma GCC optimize ("Ofast") using namespace std; #define rep(i,a,b) for(ll i = a; i vl; typedef pair pll; int main(){ cin.tie(0); ios_base::sync_with_stdio(0); ll t; cin>>t; while(t--){ ll n, na,nb,nc; cin>>n>>na>>nb>>nc; vl x(n); ll totSum = 0; rep(i,0,n) { cin>>x[i]; totSum += x[i]; } vector ans(3); vl sums(3); vector ord({{na,0},{nb,1},{nc,2}}); vl ns({na,nb,nc}); sort(all(ord)); rep(j,0,3){ ll k = ord[j].second; sort(all(x)); reverse(all(x)); vl newx; vl suffSum(sz(x)+1); for(ll i = sz(x)-1; i>=0; i--){ suffSum[i] = suffSum[i+1]+x[i]; } rep(i,0,sz(x)){ //cout<sz(x)-i) break; if( ns[k]>0 && 2*(sums[k]+x[i]+suffSum[sz(x)-(ns[k]-1)])