#include <bits/stdc++.h>   #pragma warning(disable : 4996)   using namespace std;   namespace Xrocks {}   using namespace Xrocks;   namespace Xrocks {   class in {   } user_input;   class out {   } output;   in& operator>>(in& X, int& Y) {     scanf( %d , &Y);     return X;   }   in& operator>>(in& X, char* Y) {     scanf( %s , Y);     return X;   }   in& operator>>(in& X, float& Y) {     scanf( %f , &Y);     return X;   }   in& operator>>(in& X, double& Y) {     scanf( %lf , &Y);     return X;   }   in& operator>>(in& X, char& C) {     scanf( %c , &C);     return X;   }   in& operator>>(in& X, string& Y) {     cin >> Y;     return X;   }   in& operator>>(in& X, long long& Y) {     scanf( %lld , &Y);     return X;   }   template <typename T>   in& operator>>(in& X, vector<T>& Y) {     for (auto& x : Y) user_input >> x;     return X;   }   template <typename T>   out& operator<<(out& X, T Y) {     cout << Y;     return X;   }   template <typename T>   out& operator<<(out& X, vector<T>& Y) {     for (auto& x : Y) output << x <<    ;     return X;   }   out& operator<<(out& X, const int& Y) {     printf( %d , Y);     return X;   }   out& operator<<(out& X, const char& C) {     printf( %c , C);     return X;   }   out& operator<<(out& X, const string& Y) {     printf( %s , Y.c_str());     return X;   }   out& operator<<(out& X, const long long& Y) {     printf( %lld , Y);     return X;   }   out& operator<<(out& X, const float& Y) {     printf( %f , Y);     return X;   }   out& operator<<(out& X, const double& Y) {     printf( %lf , Y);     return X;   }   out& operator<<(out& X, const char Y[]) {     printf( %s , Y);     return X;   }   template <typename T>   T max(T A) {     return A;   }   template <typename T, typename... args>   T max(T A, T B, args... S) {     return max(A > B ? A : B, S...);   }   template <typename T>   T min(T A) {     return A;   }   template <typename T, typename... args>   T min(T A, T B, args... S) {     return min(A < B ? A : B, S...);   }   template <typename T>   void vectorize(int y, vector<T>& A) {     A.resize(y);   }   template <typename T, typename... args>   void vectorize(int y, vector<T>& A, args&&... S) {     A.resize(y);     vectorize(y, S...);   }   long long fast(long long a, long long b, long long pr) {     if (b == 0) return 1 % pr;     long long ans = 1 % pr;     while (b) {       if (b & 1) ans = (ans * a) % pr;       b >>= 1;       a = (a * a) % pr;     }     return ans;   }   int readInt() {     int n = 0;     scanf( %d , &n);     return n;     int ch = getchar_unlocked();     int sign = 1;     while (ch <  0  || ch >  9 ) {       if (ch ==  - ) sign = -1;       ch = getchar_unlocked();     }     while (ch >=  0  && ch <=  9 )       n = (n << 3) + (n << 1) + ch -  0 , ch = getchar_unlocked();     n = n * sign;     return n;   }   long long readLong() {     long long n = 0;     int ch = getchar_unlocked();     int sign = 1;     while (ch <  0  || ch >  9 ) {       if (ch ==  - ) sign = -1;       ch = getchar_unlocked();     }     while (ch >=  0  && ch <=  9 )       n = (n << 3) + (n << 1) + ch -  0 , ch = getchar_unlocked();     n = n * sign;     return n;   }   long long inv_(long long val,                  long long pr = static_cast<long long>(163577857)) {     return fast(val, pr - 2, pr);   }   }  // namespace Xrocks   int op1(int a, int b) { return a | b; }   int op2(int a, int b) { return a & b; }   int op3(int a, int b) { return a ^ b; }   class solve {    public:     solve() {       vector<int (*)(int, int)> g = {op1, op2, op3};       vector<int> v{0, 1, 2};       vector<int> w(4);       user_input >> w;       int x = 0;       do {         vector<int (*)(int, int)> f = g;         for (int i = 0; i < 3; i++) f[i] = g[v[i]];         if (x == 5)           output << f[0](f[1](f[0](w[0], w[1]), f[2](w[2], w[3])),                          f[2](f[1](w[1], w[2]), f[0](w[3], w[0])))                  <<   n ;         ++x;       } while (next_permutation(v.begin(), v.end()));     }   };   int32_t main() {     int t = 1, i = 1;     if (0) scanf( %d , &t);     while (t--) {       if (0) printf( Case #%d:  , i++);       new solve;     }     return 0;   }