#include using namespace std; int cnt[8];//{"012","021","102","120","201","210"} int main(){ int T,n,a,b,c; cin>>T; while(T--){ scanf("%d%d%d%d",&n,&a,&b,&c); memset(cnt,0,sizeof(cnt)); char str[10]; for(int i=1;i<=n;i++){ scanf("%s",str); if(str[0]=='0'&&str[1]=='1'&&str[2]=='2')++cnt[1]; if(str[0]=='0'&&str[1]=='2'&&str[2]=='1')++cnt[2]; if(str[0]=='1'&&str[1]=='0'&&str[2]=='2')++cnt[3]; if(str[0]=='1'&&str[1]=='2'&&str[2]=='0')++cnt[4]; if(str[0]=='2'&&str[1]=='0'&&str[2]=='1')++cnt[5]; if(str[0]=='2'&&str[1]=='1'&&str[2]=='0')++cnt[6]; } int ans=0; if(a>=cnt[1]+cnt[2]){ ans+=3*(cnt[1]+cnt[2]); a-=cnt[1]+cnt[2]; cnt[1]=cnt[2]=0; } if(b>=cnt[3]+cnt[4]){ ans+=3*(cnt[3]+cnt[4]); b-=cnt[3]+cnt[4]; cnt[3]=cnt[4]=0; } if(c>=cnt[5]+cnt[6]){ ans+=3*(cnt[5]+cnt[6]); c-=cnt[5]+cnt[6]; cnt[5]=cnt[6]=0; } int tmp; if(cnt[1]==0&&cnt[2]==0){ if(a+b>=cnt[3]+cnt[4]){ tmp=min(cnt[4],b); ans+=3*tmp; cnt[4]-=tmp; b-=tmp; tmp=min(cnt[3],b); ans+=3*tmp; cnt[3]-=tmp; b-=tmp; tmp=min(cnt[3],a); ans+=2*tmp; cnt[3]-=tmp; a-=tmp; } if(a+c>=cnt[5]+cnt[6]){ tmp=min(cnt[6],c); ans+=3*tmp; cnt[6]-=tmp; c-=tmp; tmp=min(cnt[5],c); ans+=3*tmp; cnt[5]-=tmp; c-=tmp; tmp=min(cnt[5],a); ans+=2*tmp; cnt[5]-=tmp; a-=tmp; } } if(cnt[3]==0&&cnt[4]==0){ if(a+b>=cnt[1]+cnt[2]){ tmp=min(cnt[2],a); ans+=3*tmp; cnt[2]-=tmp; a-=tmp; tmp=min(cnt[1],a); ans+=3*tmp; cnt[1]-=tmp; a-=tmp; tmp=min(cnt[1],b); ans+=2*tmp; cnt[1]-=tmp; b-=tmp; } if(b+c>=cnt[5]+cnt[6]){ tmp=min(cnt[5],c); ans+=3*tmp; cnt[5]-=tmp; c-=tmp; tmp=min(cnt[6],c); ans+=3*tmp; cnt[6]-=tmp; c-=tmp; tmp=min(cnt[6],b); ans+=2*tmp; cnt[6]-=tmp; b-=tmp; } } if(cnt[5]==0&&cnt[6]==0){ if(a+c>=cnt[1]+cnt[2]){ tmp=min(cnt[1],a); ans+=3*tmp; cnt[1]-=tmp; a-=tmp; tmp=min(cnt[2],a); ans+=3*tmp; cnt[2]-=tmp; a-=tmp; tmp=min(cnt[2],c); ans+=2*tmp; cnt[2]-=tmp; c-=tmp; } if(b+c>=cnt[3]+cnt[4]){ tmp=min(cnt[3],b); ans+=3*tmp; cnt[3]-=tmp; b-=tmp; tmp=min(cnt[4],b); ans+=3*tmp; cnt[4]-=tmp; b-=tmp; tmp=min(cnt[4],c); ans+=2*tmp; cnt[4]-=tmp; c-=tmp; } } if(cnt[1]+cnt[2]>0){ tmp=min(b,cnt[1]); cnt[1]-=tmp; ans+=2*tmp; tmp=min(c,cnt[2]); cnt[2]-=tmp; ans+=2*tmp; ans+=3*a+cnt[1]+cnt[2]-a; } if(cnt[3]+cnt[4]>0){ tmp=min(a,cnt[3]); cnt[3]-=tmp; ans+=2*tmp; tmp=min(c,cnt[4]); cnt[4]-=tmp; ans+=2*tmp; ans+=3*b+cnt[3]+cnt[4]-b; } if(cnt[5]+cnt[6]>0){ tmp=min(a,cnt[5]); cnt[5]-=tmp; ans+=2*tmp; tmp=min(b,cnt[6]); cnt[6]-=tmp; ans+=2*tmp; ans+=3*c+cnt[5]+cnt[6]-c; } printf("%d\n",ans); } return 0; }