1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <cstdio>
#include <vector>
#include <set>
#include <algorithm>

#define MAX_N 100010

using namespace std;
//#define pii pair<int, int>
//vector<int> vout_a[MAX_N];
//vector<int> vin_a[MAX_N];
vector<int> vout_b[MAX_N];
vector<int> vin_b[MAX_N];

vector<int> b_outdeg;
vector<int> b_indeg;

int main() {

	int t;
	scanf("%d", &t);
	while (t--) {
		int n, m;
		scanf("%d%d", &n, &m);
		for (int i = 0; i < n; i++) {
			//vin_a[i].clear();
			vin_b[i].clear();
			//vout_a[i].clear();
			vout_b[i].clear();
		}
		b_outdeg.clear();
		b_indeg.clear();
		int a, b;
		char w;
		for (int i = 0; i < m; i++) {
			scanf("%d%*c%c%d", &a, &w, &b);
			a--; b--;
			if (w == '>') {
				//vout_a[a].push_back(b);
				vin_b[b].push_back(a);
			}
			else {
				//vin_a[a].push_back(b);
				vout_b[b].push_back(a);
			}
		}

		for (int i = 0; i < n; i++) {
			b_outdeg.push_back(vout_b[i].size());
			b_indeg.push_back(vin_b[i].size());
		}
		sort(b_outdeg.begin(), b_outdeg.end());
		//for (int i = 0; i < n; i++) {
			//printf("vb:%d b_outdeg:%d\n", b_outdeg[i].first, b_outdeg[i].second);
		//}
		sort(b_indeg.begin(), b_indeg.end());
		//for (int i = 0; i < n; i++) {
			//printf("vb:%d b_indeg:%d\n", b_indeg[i].first, b_indeg[i].second);
		//}
		bool na_pewno_przegrana = b_outdeg[0] > 0;
		bool przynajmniej_remis = !na_pewno_przegrana;
		bool na_pewno_wygrana = b_indeg[n - 1] == n;
		if (na_pewno_przegrana) {
			printf("PRZEGRANA\n");
		}
		else if (na_pewno_wygrana) {
			printf("WYGRANA\n");
		}
		else {
			printf("REMIS\n");
		}
	}
	return 0;
}