#include //#include using namespace std; //using namespace atcoder; using ll = long long; using vll = vector; using vvll = vector; using pll = pair; using vpll = vector; using ld = long double; using vld = vector; using vb = vector; #define rep(i, n) for (ll i = 0; i < (n); i++) #ifdef LOCAL #define dbg(x) cerr << __LINE__ << " : " << #x << " = " << (x) << endl #else #define dbg(x) true #endif template bool chmin(T& a, T b) { if(a > b) { a = b; return true; } else return false; } template bool chmax(T& a, T b) { if(a < b) { a = b; return true; } else return false; } template ostream& operator<<(ostream& s, const vector& a) { for(auto i : a) s << i << ' '; return s; } constexpr int INF = 1 << 30; constexpr ll INFL = 1LL << 60; constexpr ld EPS = 1e-12; ld PI = acos(-1.0); // https://yukicoder.me/problems/no/524 void solve() { ll n; cin >> n; char c; if(n % 4 == 3) c = 'X'; else c = 'O'; cout << c << endl; return; } int main() { std::cin.tie(nullptr); std::ios_base::sync_with_stdio(false); cout << fixed << setprecision(15); solve(); }