#include #define ll int #define vll vector #define vpll vector > #define mll map #define sll set #define fo(i,n) for(i=0;i,ll> ma; void calc(ll i,ll j,ll c) { if(ma.count(mp(i,j))) return; if(i==v1.size() && j==v2.size()) return; if(i==v1.size()) { while(j>t; while(t--) { cin>>m>>n; //cout<>ch[i]; fo(i,n) cin>>s[i]; fo(i,n) cin>>e[i]; v1.clear(),v2.clear(); fo(i,n) { if(ch[i]=='E' || ch[i]=='C') v1.pb(mp(e[i],s[i])); else v2.pb(mp(e[i],s[i])); } sort(v1.begin(),v1.end()); sort(v2.begin(),v2.end()); calc(0,0,0); fo(i,n) { if(ans[i+1]>m) cout<<-1<<" "; else cout<