#include <bits/stdc++.h>
#include <ext/numeric>

#include<ext/pb_ds/tree_policy.hpp>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/rope>
using namespace std;
using namespace __gnu_pbds;
using namespace __gnu_cxx;
template<class T> using Tree = tree<T, null_type, less<T>, rb_tree_tag,tree_order_statistics_node_update>;

using namespace std;
#define go ios::sync_with_stdio(0);cin.tie(nullptr);cout.tie(nullptr);
#define ll long long
typedef vector<vector<int>>vvi;
typedef complex<long double>Point;
const double Pi = acos(-1.0) , eps = 1e-8;
#define X real()
#define Y imag()
#define Angle(v) (atan2((v).Y , (v).X))
#define Length(v) ((long double)hypot((v).Y , (v).X))
#define Lengthsqr(v) (dot((v) , (v)))
const int mxn = 2e5+ 5 , mod = 1e9 + 7, MOD = 1e9 + 7 , mod2 = 998244353;

void bingo(){
	int odd = 0 , even = 0;
	ll x ;
	cin>>x;
	if(x % 4 == 1 || x%4 == 3)
		cout<<"Odd\n";
	else if(x % 4 == 2)
		cout<<"Same\n";
	else cout<<"Even\n";

}
int main() {
	go
#ifdef LOCAL
	freopen("input.in", "rt", stdin);
//	freopen("output.out", "wt", stdout);
#endif
	//freopen("card.in", "rt", stdin);
	int t = 1;
	cin>>t;
	while(t--){
		bingo();
	}
	return 0;
}

#pragma GCC target ("avx2")
#pragma GCC optimize ("unroll-loops")
#pragma GCC optimize ("O3")
#include "bits/stdc++.h"
#include <unordered_set>
#include <unordered_map>
#include <random>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
constexpr ll MOD = 1'000'000'007LL; /*998'244'353LL;*/
#define pb push_back
#define mp make_pair
#define all(x) (x).begin(), (x).end()
#define rep(i, n) for(int (i)=0; (i)<(n); (i)++)
template<class T> bool chmax(T &a, const T &b){ if(a<b){ a=b; return 1; } return 0; }
template<class T> bool chmin(T &a, const T &b){ if(b<a){ a=b; return 1; } return 0; }
constexpr int dy[4]={-1,0,1,0};
constexpr int dx[4]={0,-1,0,1};

int N;
string S[60];

ll dp[2][62];
ll solve(int b, int n){
    if(n == N) return b;
    if(dp[b][n] != -1) return dp[b][n];
    ll ret;
    if(S[n] == "AND"){
        ret = solve(b&0, n+1) + solve(b&1, n+1);
    }
    else{
        ret = solve(b|0, n+1) + solve(b|1, n+1);
    }
    return dp[b][n] = ret;
}

signed main(){
    cin >> N;
    rep(i, N) cin >> S[i];
    memset(dp, -1, sizeof(dp));
    cout << solve(0, 0) + solve(1, 0) << endl;
}