#include #include #include #include #include #include using namespace std; const int N = 5e4+3; char t[N]; int s[N], d[N], res[N]; int type(char c) { return (c == 'E' || c == 'C'); } multiset dp[2]; vector dests[N][2]; int main() { ios_base::sync_with_stdio(0); int T, m, n; cin >> T; while (T--) { cin >> m >> n; for (int i=0; i> t[i]; for (int i=0; i> s[i]; for (int i=0; i> d[i]; for (int i=0; i cnt[1]) { for (int j=0; j last) res[++last] = i; for (int t=0; t<2; t++) { sort(dests[i][t].begin(), dests[i][t].end()); for (int d: dests[i][t]) if (d > i) dp[t].insert(d); } } for (int i=1; i<=n; i++) cout << (i > last ? -1 : res[i]) << " "; cout << "\n"; for (int i=1; i<=m; i++) dests[i][0].clear(), dests[i][1].clear(); dp[0].clear(); dp[1].clear(); } return 0; }