#include "secret.h"
#include <bits/stdc++.h>
#define pii pair <int, int>
#define emb emplace_back
#define all(a) a.begin(), a.end()
using namespace std;
const int N = 1005;
int n, a[N], pref[N][N], suf[N][N];
struct {
int seg[4 * N];
void build(int l, int r){
if (l >= r) return;
int mid = (l + r) / 2;
pref[mid][mid + 1] = a[mid + 1];
for (int i = mid + 2; i <= r; i++) pref[mid][i] = Secret(pref[mid][i - 1], a[i]);
suf[mid][mid] = a[mid];
for (int i = mid - 1; i >= l; i--) suf[mid][i] = Secret(a[i], suf[mid][i + 1]);
build(l, mid), build(mid + 1, r);
}
int query(int l, int r, int ll, int rr){
if (l == r) return l;
int mid = (l + r) / 2;
if (ll <= mid && rr > mid) return mid;
if (rr <= mid) return query(l, mid, ll, rr);
else return query(mid + 1, r, ll, rr);
}
} seg;
void Init(int Nn, int A[]) {
n = Nn;
for (int i = 1; i <= n; i++) a[i] = A[i - 1];
seg.build(1, n);
}
int Query(int L, int R) {
int l = L + 1, r = R + 1;
int idx = seg.query(1, n, l, r);
return Secret(suf[idx][l], pref[idx][r]);
}