#include #include #include #include #define FORR(i,b,e) for(int i=(b);i<(int)(e);++i) #define FOR(i,e) FORR(i,0,e) #define sortuniq(v) sort(v.begin(), v.end()), v.erase(unique(v.begin(),v.end()),v.end()) #define dump(var) cerr << #var ": " << var << "\n" #define dumpc(con) for(auto& e: con) cerr << e << " "; cerr<<"\n" typedef long long ll; typedef unsigned long long ull; const double EPS = 1e-6; const int d4[] = {0, -1, 0, 1, 0}; using namespace std; int N, S, X, Y, Z, Q; int main() { cin.tie(0); ios::sync_with_stdio(false); cin >> N >> S >> X >> Y >> Z >> Q; vector A(N); A[0] = S; FORR(i, 1, N) { A[i] = (X * A[i-1] + Y) % Z; } FOR(i, N) A[i] = A[i] & 1; vector a(N); FOR(i, Q) { int s, t, u, v; cin >> s >> t >> u >> v; FOR(j, t-s+1) a[j] = A[s-1+j] ^ A[u-1+j]; FOR(j, t-s+1) A[u-1+j] = a[j]; } FOR(i, N) cout << (A[i]? 'O': 'E'); cout << endl; return 0; }