#include <iostream>
using namespace std;
struct mod {
mod(): v(0) {}
mod &operator<<(int v2) {
v = v ? v % v2 : v2;
return *this;
}
operator int() {
return v;
}
int v;
} mod;
template<int a>
bool mozliwe() {
return a;
}
bool prawda() {
return mozliwe<1>();
}
bool falsz() {
return mozliwe<0>();
}
struct napis_t {
napis_t(const std::string &value): v(value) {}
char operator[](int idx) { return v[idx - 1]; }
string v;
};
void wypisz(const std::string &value) {
cout << value;
}
void wypisz(char value) {
cout << value;
}
int main() {
string wartosc;
int n;
bool mozliwe = falsz();
cin >> n;
cin >> wartosc;
napis_t napis(wartosc);
if ((mod << n << 2) == 0) {
mozliwe = prawda();
for(int i=1; i <= n / 2; i++) {
if(napis[i] != napis[i + n / 2]) {
mozliwe = falsz();
}
}
}
if (mozliwe) {
wypisz("(");
for(int i=1; i <= n / 2; i++) {
wypisz(napis[i]);
}
wypisz(")");
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IG1vZCB7CiAgbW9kKCk6IHYoMCkge30KICBtb2QgJm9wZXJhdG9yPDwoaW50IHYyKSB7CiAgCXYgPSB2ID8gdiAlIHYyIDogdjI7CiAgCXJldHVybiAqdGhpczsKICB9CSAgCiAgb3BlcmF0b3IgaW50KCkgewogIAlyZXR1cm4gdjsKICB9CiAgaW50IHY7Cn0gbW9kOwoKdGVtcGxhdGU8aW50IGE+CmJvb2wgbW96bGl3ZSgpIHsKCXJldHVybiBhOwp9Cgpib29sIHByYXdkYSgpIHsKCXJldHVybiBtb3psaXdlPDE+KCk7Cn0KCmJvb2wgZmFsc3ooKSB7CglyZXR1cm4gbW96bGl3ZTwwPigpOwp9CgpzdHJ1Y3QgbmFwaXNfdCB7CiAgbmFwaXNfdChjb25zdCBzdGQ6OnN0cmluZyAmdmFsdWUpOiB2KHZhbHVlKSB7fQogIGNoYXIgb3BlcmF0b3JbXShpbnQgaWR4KSB7IHJldHVybiB2W2lkeCAtIDFdOyB9CiAgc3RyaW5nIHY7Cn07Cgp2b2lkIHd5cGlzeihjb25zdCBzdGQ6OnN0cmluZyAmdmFsdWUpIHsKICAgY291dCA8PCB2YWx1ZTsJCn0KCnZvaWQgd3lwaXN6KGNoYXIgdmFsdWUpIHsKICAgY291dCA8PCB2YWx1ZTsJCn0KCmludCBtYWluKCkgewoJc3RyaW5nIHdhcnRvc2M7CglpbnQgbjsKCWJvb2wgbW96bGl3ZSA9IGZhbHN6KCk7CgljaW4gPj4gbjsKCWNpbiA+PiB3YXJ0b3NjOwoJbmFwaXNfdCBuYXBpcyh3YXJ0b3NjKTsKCQoJaWYgKChtb2QgPDwgbiA8PCAyKSA9PSAwKSB7CiAgICAgICAgbW96bGl3ZSA9IHByYXdkYSgpOyAgICAgICAJCQogICAgICAgIGZvcihpbnQgaT0xOyBpIDw9IG4gLyAyOyBpKyspIHsKICAgICAgICAgICAJaWYobmFwaXNbaV0gIT0gbmFwaXNbaSArIG4gLyAyXSkgewogICAgICAgICAgIAkJbW96bGl3ZSA9IGZhbHN6KCk7CiAgICAgICAgICAgCX0KICAgICAgICB9Cgl9CgkKCWlmIChtb3psaXdlKSB7CgkJd3lwaXN6KCIoIik7CgkJZm9yKGludCBpPTE7IGkgPD0gbiAvIDI7IGkrKykgewoJCQl3eXBpc3oobmFwaXNbaV0pOwoJCX0KCQl3eXBpc3ooIikiKTsKCX0KCXJldHVybiAwOwp9