#include <bits/stdc++.h> // NeOWami
using namespace std;
#define ft first
#define sc second
const int N = 1e5 + 5;
int n, a[N], b[N], k;
string s;
vector<int> lst[N];
int vis[N];
void calc() {
int mid = n / 2;
for (int i = 1; i <= mid; i++) b[i * 2 - 1] = a[i];
if (n & 1) b[n] = a[mid + 1];
for (int i = 1; i <= mid; i++) b[i * 2] = a[n - i + 1];
for (int i = 1; i <= n; i++) a[b[i]] = i;
}
signed main() {
cin.tie(NULL)->sync_with_stdio(false);
if(ifstream("slom.inp")) {
freopen("slom.inp", "r", stdin);
freopen("slom.out", "w", stdout);
}
cin >> k >> s;
n = s.size(); s = ' ' + s;
for (int i = 1; i <= n; i++) a[i] = i;
calc();
for (int i = 1; i <= n; i++) if (!vis[i]) {
vis[0]++;
for (int u = i; !vis[u]; u = a[u]) {
vis[u] = vis[0];
b[u] = lst[vis[0]].size();
lst[vis[0]].push_back(u);
}
}
for (int i = 1; i <= n; i++) {
int id = vis[i];
int sz = lst[id].size();
int pos = (b[i] + k) % sz;
cout << s[lst[id][pos]];
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+IC8vIE5lT1dhbWkKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgZnQgZmlyc3QKI2RlZmluZSBzYyBzZWNvbmQKY29uc3QgaW50IE4gPSAxZTUgKyA1OwppbnQgbiwgYVtOXSwgYltOXSwgazsKc3RyaW5nIHM7CnZlY3RvcjxpbnQ+IGxzdFtOXTsKaW50IHZpc1tOXTsKdm9pZCBjYWxjKCkgewogICAgaW50IG1pZCA9IG4gLyAyOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbWlkOyBpKyspIGJbaSAqIDIgLSAxXSA9IGFbaV07CiAgICBpZiAobiAmIDEpIGJbbl0gPSBhW21pZCArIDFdOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbWlkOyBpKyspIGJbaSAqIDJdID0gYVtuIC0gaSArIDFdOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSBhW2JbaV1dID0gaTsKfQpzaWduZWQgbWFpbigpIHsKICAgIGNpbi50aWUoTlVMTCktPnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBpZihpZnN0cmVhbSgic2xvbS5pbnAiKSkgewogICAgICAgIGZyZW9wZW4oInNsb20uaW5wIiwgInIiLCBzdGRpbik7CiAgICAgICAgZnJlb3Blbigic2xvbS5vdXQiLCAidyIsIHN0ZG91dCk7CiAgICB9CiAgICBjaW4gPj4gayA+PiBzOwogICAgbiA9IHMuc2l6ZSgpOyBzID0gJyAnICsgczsKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgYVtpXSA9IGk7CiAgICBjYWxjKCk7CiAgICBmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIGlmICghdmlzW2ldKSB7CiAgICAgICAgdmlzWzBdKys7CiAgICAgICAgZm9yIChpbnQgdSA9IGk7ICF2aXNbdV07IHUgPSBhW3VdKSB7CiAgICAgICAgICAgIHZpc1t1XSA9IHZpc1swXTsKICAgICAgICAgICAgYlt1XSA9IGxzdFt2aXNbMF1dLnNpemUoKTsKICAgICAgICAgICAgbHN0W3Zpc1swXV0ucHVzaF9iYWNrKHUpOwogICAgICAgIH0KICAgIH0KICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewogICAgICAgIGludCBpZCA9IHZpc1tpXTsKICAgICAgICBpbnQgc3ogPSBsc3RbaWRdLnNpemUoKTsKICAgICAgICBpbnQgcG9zID0gKGJbaV0gKyBrKSAlIHN6OwogICAgICAgIGNvdXQgPDwgc1tsc3RbaWRdW3Bvc11dOwogICAgfQogICAgcmV0dXJuIDA7Cn0K