#include #include #include #include //#include #include #include #include #include #include //#include #include #include #include //#include #include //#include #include #include #include #include #include #include const int dx[] = {1, 0, -1, 0}; const int dy[] = {0, -1, 0, 1}; using namespace std; typedef long long ll; typedef unsigned long long ull; typedef vector vi; typedef vector vll; typedef pair pii; const int MAXA = 100001; const int MAXN = 100001; vector pos[MAXA]; int B[MAXN]; int main() { cin.tie(0); ios::sync_with_stdio(false); int N; cin >> N; for (int i = 0; i < N; i++) { int a; cin >> a; pos[a].push_back(i); } for (int i = 0; i < N; i++) cin >> B[i]; bitset<2*MAXN> ans; for (int i = 0; i < MAXA; i++) if (pos[i].size()) { bitset<2*MAXN> memo; for (int j = 0; j < N; j++) if (B[j]) { for (int to : pos[i]) memo.set(j+to); } ans ^= memo; } for (int i = 0; i < 2*N-1; i++) { if (ans[i]) cout << "ODD" << endl; else cout << "EVEN" << endl; } return 0; }