#include <bits/stdc++.h>
using namespace std;
// template {{{
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define mt make_tuple
#define lb lower_bound
#define ub upper_bound
#define f first
#define s second
#define resz resize
#define sz(x) int((x).size())
#define all(x) (x).begin(), (x).end()
#define FOR(i, a, b) for (int i = (a); i < (b); i++)
#define F0R(i, a) for (int i = 0; i < (a); i++)
#define FORd(i, a, b) for (int i = (b)-1; i >= (a); i--)
#define F0Rd(i, a) for (int i = (a)-1; i >= 0; i--)
#define trav(a, x) for (auto& a : x)
#define sort_by(x, y) sort(all(x), [&](const auto& a, const auto& b) { return y; })
using ll = long long;
using vi = vector<int>;
using vvi = vector<vi>;
using vll = vector<ll>;
using vvll = vector<vll>;
using vb = vector<bool>;
using vd = vector<double>;
using vs = vector<string>;
using pii = pair<int, int>;
using pll = pair<ll, ll>;
using pdd = pair<double, double>;
using vpii = vector<pii>;
using vpll = vector<pll>;
using vpdd = vector<pdd>;
template<typename T> void ckmin(T& a, const T& b) { a = min(a, b); }
template<typename T> void ckmax(T& a, const T& b) { a = max(a, b); }
mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
namespace __input {
template<class T1, class T2> void re(pair<T1,T2>& p);
template<class T> void re(vector<T>& a);
template<class T, size_t SZ> void re(array<T,SZ>& a);
template<class T> void re(T& x) { cin >> x; }
void re(double& x) { string t; re(t); x = stod(t); }
template<class Arg, class... Args> void re(Arg& first, Args&... rest) {
re(first); re(rest...);
}
template<class T1, class T2> void re(pair<T1,T2>& p) { re(p.f,p.s); }
template<class T> void re(vector<T>& a) { F0R(i,sz(a)) re(a[i]); }
template<class T, size_t SZ> void re(array<T,SZ>& a) { F0R(i,SZ) re(a[i]); }
}
using namespace __input;
namespace __output {
template<class T1, class T2> void pr(const pair<T1,T2>& x);
template<class T, size_t SZ> void pr(const array<T,SZ>& x);
template<class T> void pr(const vector<T>& x);
template<class T> void pr(const set<T>& x);
template<class T1, class T2> void pr(const map<T1,T2>& x);
template<class T> void pr(const T& x) { cout << x; }
template<class Arg, class... Args> void pr(const Arg& first, const Args&... rest) {
pr(first); pr(rest...);
}
template<class T1, class T2> void pr(const pair<T1,T2>& x) {
pr("{",x.f,", ",x.s,"}");
}
template<class T, bool pretty = true> void prContain(const T& x) {
if (pretty) pr("{");
bool fst = 1; for (const auto& a: x) pr(!fst?pretty?", ":" ":"",a), fst = 0;
if (pretty) pr("}");
}
template<class T> void pc(const T& x) { prContain<T, false>(x); pr("\n"); }
template<class T, size_t SZ> void pr(const array<T,SZ>& x) { prContain(x); }
template<class T> void pr(const vector<T>& x) { prContain(x); }
template<class T> void pr(const set<T>& x) { prContain(x); }
template<class T1, class T2> void pr(const map<T1,T2>& x) { prContain(x); }
void ps() { pr("\n"); }
template<class Arg> void ps(const Arg& first) {
pr(first); ps();
}
template<class Arg, class... Args> void ps(const Arg& first, const Args&... rest) {
pr(first," "); ps(rest...);
}
}
using namespace __output;
#define TRACE(x) x
#define __pn(x) pr(#x, " = ")
#define pd(...) __pn((__VA_ARGS__)), ps(__VA_ARGS__), cout << flush
namespace __algorithm {
template<typename T> void dedup(vector<T>& v) {
sort(all(v)); v.erase(unique(all(v)), v.end());
}
template<typename T> typename vector<T>::const_iterator find(const vector<T>& v, const T& x) {
auto it = lower_bound(all(v), x); return it != v.end() && *it == x ? it : v.end();
}
template<typename T> size_t index(const vector<T>& v, const T& x) {
auto it = find(v, x); assert(it != v.end() && *it == x); return it - v.begin();
}
template<typename T1, typename T2> typename vector<pair<T1, T2>>::iterator lower_bound(
const vector<pair<T1, T2>>& v, const T1& x) {
return lower_bound(all(v), x, [](pair<T1, T2> a, pair<T1, T2> b) { return a.f < b.f; });
}
template<typename T1, typename T2> typename vector<pair<T1, T2>>::iterator upper_bound(
const vector<pair<T1, T2>>& v, const T1& x) {
return upper_bound(all(v), x, [](pair<T1, T2> a, pair<T1, T2> b) { return a.f < b.f; });
}
}
using namespace __algorithm;
/*struct __monostate {
friend istream& operator>>(istream& is, const __attribute__((unused))__monostate& ms) { return is; }
friend ostream& operator<<(ostream& os, const __attribute__((unused))__monostate& ms) { return os; }
} ms;
namespace __io {
void setIn(string s) { freopen(s.c_str(),"r",stdin); }
void setOut(string s) { freopen(s.c_str(),"w",stdout); }
void setIO(string s = "") {
ios_base::sync_with_stdio(0); cin.tie(0);
cout << setprecision(15);
if (sz(s)) { setIn(s+".in"), setOut(s+".out"); }
}
}
using namespace __io;*/
// }}}
const int N = 1e5+2;
int t, n, k;
int main()
{
re(t);
while(t--)
{
re(n, k);
vll a(n+1), cnt(31);
for(int i = 1; i<=n; i++)
{
re(a[i]);
for(int j = 0; j<31; j++)
if((a[i]&(1<<j)))
cnt[j]++;
}
vector<vector<pll>> dp(31, vector<pll>(k+1, {0, 0}));
for(int i = 0; i<=30; i++)
{
for(int x = 0; x<=k; x++)
{
if(i==0)
{
if(x && cnt[i])
dp[i][x] = {cnt[i], 1};
continue;
}
if(x)
{
if((cnt[i]*(1ll<<i)+dp[i-1][x-1].f)>dp[i-1][x].f)
dp[i][x].s = dp[i-1][x-1].s|(1ll<<i);
else
dp[i][x].s = dp[i-1][x].s;
dp[i][x].f = max(cnt[i]*(1ll<<i)+dp[i-1][x-1].f, dp[i-1][x].f);
}
else
dp[i][x] = dp[i-1][x];
}
}
ps(dp[30][k].s);
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLy8gdGVtcGxhdGUge3t7CiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgZWIgZW1wbGFjZV9iYWNrCiNkZWZpbmUgbXAgbWFrZV9wYWlyCiNkZWZpbmUgbXQgbWFrZV90dXBsZQojZGVmaW5lIGxiIGxvd2VyX2JvdW5kCiNkZWZpbmUgdWIgdXBwZXJfYm91bmQKI2RlZmluZSBmIGZpcnN0CiNkZWZpbmUgcyBzZWNvbmQKI2RlZmluZSByZXN6IHJlc2l6ZQogCiNkZWZpbmUgc3ooeCkgaW50KCh4KS5zaXplKCkpCiNkZWZpbmUgYWxsKHgpICh4KS5iZWdpbigpLCAoeCkuZW5kKCkKIAojZGVmaW5lIEZPUihpLCBhLCBiKSBmb3IgKGludCBpID0gKGEpOyBpIDwgKGIpOyBpKyspCiNkZWZpbmUgRjBSKGksIGEpIGZvciAoaW50IGkgPSAwOyBpIDwgKGEpOyBpKyspCiNkZWZpbmUgRk9SZChpLCBhLCBiKSBmb3IgKGludCBpID0gKGIpLTE7IGkgPj0gKGEpOyBpLS0pCiNkZWZpbmUgRjBSZChpLCBhKSBmb3IgKGludCBpID0gKGEpLTE7IGkgPj0gMDsgaS0tKQojZGVmaW5lIHRyYXYoYSwgeCkgZm9yIChhdXRvJiBhIDogeCkKIAojZGVmaW5lIHNvcnRfYnkoeCwgeSkgc29ydChhbGwoeCksIFsmXShjb25zdCBhdXRvJiBhLCBjb25zdCBhdXRvJiBiKSB7IHJldHVybiB5OyB9KQogCnVzaW5nIGxsID0gbG9uZyBsb25nOwp1c2luZyB2aSA9IHZlY3RvcjxpbnQ+Owp1c2luZyB2dmkgPSB2ZWN0b3I8dmk+Owp1c2luZyB2bGwgPSB2ZWN0b3I8bGw+Owp1c2luZyB2dmxsID0gdmVjdG9yPHZsbD47CnVzaW5nIHZiID0gdmVjdG9yPGJvb2w+Owp1c2luZyB2ZCA9IHZlY3Rvcjxkb3VibGU+Owp1c2luZyB2cyA9IHZlY3RvcjxzdHJpbmc+OwogCnVzaW5nIHBpaSA9IHBhaXI8aW50LCBpbnQ+Owp1c2luZyBwbGwgPSBwYWlyPGxsLCBsbD47CnVzaW5nIHBkZCA9IHBhaXI8ZG91YmxlLCBkb3VibGU+OwogCnVzaW5nIHZwaWkgPSB2ZWN0b3I8cGlpPjsKdXNpbmcgdnBsbCA9IHZlY3RvcjxwbGw+Owp1c2luZyB2cGRkID0gdmVjdG9yPHBkZD47CiAKdGVtcGxhdGU8dHlwZW5hbWUgVD4gdm9pZCBja21pbihUJiBhLCBjb25zdCBUJiBiKSB7IGEgPSBtaW4oYSwgYik7IH0KdGVtcGxhdGU8dHlwZW5hbWUgVD4gdm9pZCBja21heChUJiBhLCBjb25zdCBUJiBiKSB7IGEgPSBtYXgoYSwgYik7IH0KIAptdDE5OTM3XzY0IHJuZyhjaHJvbm86OnN0ZWFkeV9jbG9jazo6bm93KCkudGltZV9zaW5jZV9lcG9jaCgpLmNvdW50KCkpOwogCm5hbWVzcGFjZSBfX2lucHV0IHsKICAgIHRlbXBsYXRlPGNsYXNzIFQxLCBjbGFzcyBUMj4gdm9pZCByZShwYWlyPFQxLFQyPiYgcCk7CiAgICB0ZW1wbGF0ZTxjbGFzcyBUPiB2b2lkIHJlKHZlY3RvcjxUPiYgYSk7CiAgICB0ZW1wbGF0ZTxjbGFzcyBULCBzaXplX3QgU1o+IHZvaWQgcmUoYXJyYXk8VCxTWj4mIGEpOwogCiAgICB0ZW1wbGF0ZTxjbGFzcyBUPiB2b2lkIHJlKFQmIHgpIHsgY2luID4+IHg7IH0KICAgIHZvaWQgcmUoZG91YmxlJiB4KSB7IHN0cmluZyB0OyByZSh0KTsgeCA9IHN0b2QodCk7IH0KICAgIHRlbXBsYXRlPGNsYXNzIEFyZywgY2xhc3MuLi4gQXJncz4gdm9pZCByZShBcmcmIGZpcnN0LCBBcmdzJi4uLiByZXN0KSB7CiAgICAgICAgcmUoZmlyc3QpOyByZShyZXN0Li4uKTsKICAgIH0KIAogICAgdGVtcGxhdGU8Y2xhc3MgVDEsIGNsYXNzIFQyPiB2b2lkIHJlKHBhaXI8VDEsVDI+JiBwKSB7IHJlKHAuZixwLnMpOyB9CiAgICB0ZW1wbGF0ZTxjbGFzcyBUPiB2b2lkIHJlKHZlY3RvcjxUPiYgYSkgeyBGMFIoaSxzeihhKSkgcmUoYVtpXSk7IH0KICAgIHRlbXBsYXRlPGNsYXNzIFQsIHNpemVfdCBTWj4gdm9pZCByZShhcnJheTxULFNaPiYgYSkgeyBGMFIoaSxTWikgcmUoYVtpXSk7IH0KfQp1c2luZyBuYW1lc3BhY2UgX19pbnB1dDsKIApuYW1lc3BhY2UgX19vdXRwdXQgewogICAgdGVtcGxhdGU8Y2xhc3MgVDEsIGNsYXNzIFQyPiB2b2lkIHByKGNvbnN0IHBhaXI8VDEsVDI+JiB4KTsKICAgIHRlbXBsYXRlPGNsYXNzIFQsIHNpemVfdCBTWj4gdm9pZCBwcihjb25zdCBhcnJheTxULFNaPiYgeCk7CiAgICB0ZW1wbGF0ZTxjbGFzcyBUPiB2b2lkIHByKGNvbnN0IHZlY3RvcjxUPiYgeCk7CiAgICB0ZW1wbGF0ZTxjbGFzcyBUPiB2b2lkIHByKGNvbnN0IHNldDxUPiYgeCk7CiAgICB0ZW1wbGF0ZTxjbGFzcyBUMSwgY2xhc3MgVDI+IHZvaWQgcHIoY29uc3QgbWFwPFQxLFQyPiYgeCk7CiAKICAgIHRlbXBsYXRlPGNsYXNzIFQ+IHZvaWQgcHIoY29uc3QgVCYgeCkgeyBjb3V0IDw8IHg7IH0KICAgIHRlbXBsYXRlPGNsYXNzIEFyZywgY2xhc3MuLi4gQXJncz4gdm9pZCBwcihjb25zdCBBcmcmIGZpcnN0LCBjb25zdCBBcmdzJi4uLiByZXN0KSB7CiAgICAgICAgcHIoZmlyc3QpOyBwcihyZXN0Li4uKTsKICAgIH0KIAogICAgdGVtcGxhdGU8Y2xhc3MgVDEsIGNsYXNzIFQyPiB2b2lkIHByKGNvbnN0IHBhaXI8VDEsVDI+JiB4KSB7CiAgICAgICAgcHIoInsiLHguZiwiLCAiLHgucywifSIpOwogICAgfQogICAgdGVtcGxhdGU8Y2xhc3MgVCwgYm9vbCBwcmV0dHkgPSB0cnVlPiB2b2lkIHByQ29udGFpbihjb25zdCBUJiB4KSB7CiAgICAgICAgaWYgKHByZXR0eSkgcHIoInsiKTsKICAgICAgICBib29sIGZzdCA9IDE7IGZvciAoY29uc3QgYXV0byYgYTogeCkgcHIoIWZzdD9wcmV0dHk/IiwgIjoiICI6IiIsYSksIGZzdCA9IDA7CiAgICAgICAgaWYgKHByZXR0eSkgcHIoIn0iKTsKICAgIH0KICAgIHRlbXBsYXRlPGNsYXNzIFQ+IHZvaWQgcGMoY29uc3QgVCYgeCkgeyBwckNvbnRhaW48VCwgZmFsc2U+KHgpOyBwcigiXG4iKTsgfQogICAgdGVtcGxhdGU8Y2xhc3MgVCwgc2l6ZV90IFNaPiB2b2lkIHByKGNvbnN0IGFycmF5PFQsU1o+JiB4KSB7IHByQ29udGFpbih4KTsgfQogICAgdGVtcGxhdGU8Y2xhc3MgVD4gdm9pZCBwcihjb25zdCB2ZWN0b3I8VD4mIHgpIHsgcHJDb250YWluKHgpOyB9CiAgICB0ZW1wbGF0ZTxjbGFzcyBUPiB2b2lkIHByKGNvbnN0IHNldDxUPiYgeCkgeyBwckNvbnRhaW4oeCk7IH0KICAgIHRlbXBsYXRlPGNsYXNzIFQxLCBjbGFzcyBUMj4gdm9pZCBwcihjb25zdCBtYXA8VDEsVDI+JiB4KSB7IHByQ29udGFpbih4KTsgfQogCiAgICB2b2lkIHBzKCkgeyBwcigiXG4iKTsgfQogICAgdGVtcGxhdGU8Y2xhc3MgQXJnPiB2b2lkIHBzKGNvbnN0IEFyZyYgZmlyc3QpIHsKICAgICAgICBwcihmaXJzdCk7IHBzKCk7CiAgICB9CiAgICB0ZW1wbGF0ZTxjbGFzcyBBcmcsIGNsYXNzLi4uIEFyZ3M+IHZvaWQgcHMoY29uc3QgQXJnJiBmaXJzdCwgY29uc3QgQXJncyYuLi4gcmVzdCkgewogICAgICAgIHByKGZpcnN0LCIgIik7IHBzKHJlc3QuLi4pOwogICAgfQp9CnVzaW5nIG5hbWVzcGFjZSBfX291dHB1dDsKIAojZGVmaW5lIFRSQUNFKHgpIHgKI2RlZmluZSBfX3BuKHgpIHByKCN4LCAiID0gIikKI2RlZmluZSBwZCguLi4pIF9fcG4oKF9fVkFfQVJHU19fKSksIHBzKF9fVkFfQVJHU19fKSwgY291dCA8PCBmbHVzaAogCm5hbWVzcGFjZSBfX2FsZ29yaXRobSB7CiAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiB2b2lkIGRlZHVwKHZlY3RvcjxUPiYgdikgewogICAgICAgIHNvcnQoYWxsKHYpKTsgdi5lcmFzZSh1bmlxdWUoYWxsKHYpKSwgdi5lbmQoKSk7CiAgICB9CiAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiB0eXBlbmFtZSB2ZWN0b3I8VD46OmNvbnN0X2l0ZXJhdG9yIGZpbmQoY29uc3QgdmVjdG9yPFQ+JiB2LCBjb25zdCBUJiB4KSB7CiAgICAgICAgYXV0byBpdCA9IGxvd2VyX2JvdW5kKGFsbCh2KSwgeCk7IHJldHVybiBpdCAhPSB2LmVuZCgpICYmICppdCA9PSB4ID8gaXQgOiB2LmVuZCgpOwogICAgfQogICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc2l6ZV90IGluZGV4KGNvbnN0IHZlY3RvcjxUPiYgdiwgY29uc3QgVCYgeCkgewogICAgICAgIGF1dG8gaXQgPSBmaW5kKHYsIHgpOyBhc3NlcnQoaXQgIT0gdi5lbmQoKSAmJiAqaXQgPT0geCk7IHJldHVybiBpdCAtIHYuYmVnaW4oKTsKICAgIH0KIAogICAgdGVtcGxhdGU8dHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPiB0eXBlbmFtZSB2ZWN0b3I8cGFpcjxUMSwgVDI+Pjo6aXRlcmF0b3IgbG93ZXJfYm91bmQoCiAgICAgICAgICAgIGNvbnN0IHZlY3RvcjxwYWlyPFQxLCBUMj4+JiB2LCBjb25zdCBUMSYgeCkgewogICAgICAgIHJldHVybiBsb3dlcl9ib3VuZChhbGwodiksIHgsIFtdKHBhaXI8VDEsIFQyPiBhLCBwYWlyPFQxLCBUMj4gYikgeyByZXR1cm4gYS5mIDwgYi5mOyB9KTsKICAgIH0KICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMj4gdHlwZW5hbWUgdmVjdG9yPHBhaXI8VDEsIFQyPj46Oml0ZXJhdG9yIHVwcGVyX2JvdW5kKAogICAgICAgICAgICBjb25zdCB2ZWN0b3I8cGFpcjxUMSwgVDI+PiYgdiwgY29uc3QgVDEmIHgpIHsKICAgICAgICByZXR1cm4gdXBwZXJfYm91bmQoYWxsKHYpLCB4LCBbXShwYWlyPFQxLCBUMj4gYSwgcGFpcjxUMSwgVDI+IGIpIHsgcmV0dXJuIGEuZiA8IGIuZjsgfSk7CiAgICB9Cn0KdXNpbmcgbmFtZXNwYWNlIF9fYWxnb3JpdGhtOwogCi8qc3RydWN0IF9fbW9ub3N0YXRlIHsKICAgIGZyaWVuZCBpc3RyZWFtJiBvcGVyYXRvcj4+KGlzdHJlYW0mIGlzLCBjb25zdCBfX2F0dHJpYnV0ZV9fKCh1bnVzZWQpKV9fbW9ub3N0YXRlJiBtcykgeyByZXR1cm4gaXM7IH0KICAgIGZyaWVuZCBvc3RyZWFtJiBvcGVyYXRvcjw8KG9zdHJlYW0mIG9zLCBjb25zdCBfX2F0dHJpYnV0ZV9fKCh1bnVzZWQpKV9fbW9ub3N0YXRlJiBtcykgeyByZXR1cm4gb3M7IH0KfSBtczsKIApuYW1lc3BhY2UgX19pbyB7CiAgICB2b2lkIHNldEluKHN0cmluZyBzKSB7IGZyZW9wZW4ocy5jX3N0cigpLCJyIixzdGRpbik7IH0KICAgIHZvaWQgc2V0T3V0KHN0cmluZyBzKSB7IGZyZW9wZW4ocy5jX3N0cigpLCJ3IixzdGRvdXQpOyB9CiAgICB2b2lkIHNldElPKHN0cmluZyBzID0gIiIpIHsKICAgICAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOyBjaW4udGllKDApOwogICAgICAgIGNvdXQgPDwgc2V0cHJlY2lzaW9uKDE1KTsKICAgICAgICBpZiAoc3oocykpIHsgc2V0SW4ocysiLmluIiksIHNldE91dChzKyIub3V0Iik7IH0KICAgIH0KfQp1c2luZyBuYW1lc3BhY2UgX19pbzsqLwovLyB9fX0KY29uc3QgaW50IE4gPSAxZTUrMjsKaW50IHQsIG4sIGs7CmludCBtYWluKCkKewogICAgcmUodCk7CiAgICB3aGlsZSh0LS0pCiAgICB7CiAgICAgICAgcmUobiwgayk7CiAgICAgICAgdmxsIGEobisxKSwgY250KDMxKTsKICAgICAgICBmb3IoaW50IGkgPSAxOyBpPD1uOyBpKyspCiAgICAgICAgewogICAgICAgICAgICByZShhW2ldKTsKICAgICAgICAgICAgZm9yKGludCBqID0gMDsgajwzMTsgaisrKQogICAgICAgICAgICAgICAgaWYoKGFbaV0mKDE8PGopKSkKICAgICAgICAgICAgICAgICAgICBjbnRbal0rKzsKICAgICAgICB9CiAgICAgICAgdmVjdG9yPHZlY3RvcjxwbGw+PiBkcCgzMSwgdmVjdG9yPHBsbD4oaysxLCB7MCwgMH0pKTsKICAgICAgICBmb3IoaW50IGkgID0gMDsgaTw9MzA7IGkrKykKICAgICAgICB7CiAgICAgICAgICAgIGZvcihpbnQgeCA9IDA7IHg8PWs7IHgrKykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaWYoaT09MCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBpZih4ICYmIGNudFtpXSkKICAgICAgICAgICAgICAgICAgICAgICAgZHBbaV1beF0gPSB7Y250W2ldLCAxfTsKICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmKHgpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgaWYoKGNudFtpXSooMWxsPDxpKStkcFtpLTFdW3gtMV0uZik+ZHBbaS0xXVt4XS5mKQogICAgICAgICAgICAgICAgICAgICAgICBkcFtpXVt4XS5zID0gZHBbaS0xXVt4LTFdLnN8KDFsbDw8aSk7CiAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICBkcFtpXVt4XS5zID0gZHBbaS0xXVt4XS5zOwogICAgICAgICAgICAgICAgICAgIGRwW2ldW3hdLmYgPSBtYXgoY250W2ldKigxbGw8PGkpK2RwW2ktMV1beC0xXS5mLCBkcFtpLTFdW3hdLmYpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgIGRwW2ldW3hdID0gZHBbaS0xXVt4XTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwcyhkcFszMF1ba10ucyk7CiAgICB9CiAgICAgICAgcmV0dXJuIDA7Cn0K