#include <bits/stdc++.h>
using namespace std;
#define int long long
#define vi vector<int>
#define fi first
#define se second
#define pb push_back
#define ii pair<int , int>
#define pq priority_queue
#define iii pair<int , pair<int , int>>
#define fo(i,l,r) for(int i=l;i<=r;i++)
#define fod(i,r,l) for(int i=r;i>=l;i--)
#define fill(f,x) memset(f,x,sizeof(f))
#define NAME "file"
const int N = 2e5 + 5, mod = 1e9 + 7;
int n , k , a[21] , b[21] , p[21] , cnt = 0;
void sol(int i)
{
if (i > n)
{
stack <int> st;
bool check = true;
int dem = 0;
for (int j = 1 ; j <= n ; j++)
{
if (p[j] == 0)
{
st.push(0);
dem++; // số ngoặc mở liên tiếp
if (dem > k)
{
check = false;
break;
}
}
else
{
dem = 0;
if (st.empty())
{
check = false;
break;
}
st.pop();
}
}
if (st.empty() && check)
{
for (int j = 1 ; j <= n ; j++)
{
if (p[j] == 0) cout << '(';
else cout << ')';
}
cout << '\n';
}
}
else
{
for (int j = 0 ; j <= 1 ; j++)
{
p[i] = j;
sol(i + 1);
}
}
}
signed main()
{
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
//freopen(NAME".INP" , "r" , stdin);
//freopen(NAME".OUT" , "w" , stdout);
cin >> n >> k;
sol(1);
}
// haronnee_
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIHZpIHZlY3RvcjxpbnQ+CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBpaSBwYWlyPGludCAsIGludD4KI2RlZmluZSBwcSBwcmlvcml0eV9xdWV1ZQojZGVmaW5lIGlpaSBwYWlyPGludCAsIHBhaXI8aW50ICwgaW50Pj4KI2RlZmluZSBmbyhpLGwscikgZm9yKGludCBpPWw7aTw9cjtpKyspCiNkZWZpbmUgZm9kKGkscixsKSBmb3IoaW50IGk9cjtpPj1sO2ktLSkKI2RlZmluZSBmaWxsKGYseCkgbWVtc2V0KGYseCxzaXplb2YoZikpCiNkZWZpbmUgTkFNRSAiZmlsZSIKCmNvbnN0IGludCBOID0gMmU1ICsgNSwgbW9kID0gMWU5ICsgNzsKaW50IG4gLCBrICwgYVsyMV0gLCBiWzIxXSAsIHBbMjFdICwgY250ID0gMDsKCnZvaWQgc29sKGludCBpKQp7CiAgICBpZiAoaSA+IG4pCiAgICB7CiAgICAgICAgc3RhY2sgPGludD4gc3Q7CiAgICAgICAgYm9vbCBjaGVjayA9IHRydWU7CiAgICAgICAgaW50IGRlbSA9IDA7CiAgICAgICAgZm9yIChpbnQgaiA9IDEgOyBqIDw9IG4gOyBqKyspCiAgICAgICAgewogICAgICAgICAgICBpZiAocFtqXSA9PSAwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBzdC5wdXNoKDApOwogICAgICAgICAgICAgICAgZGVtKys7IC8vIHPhu5Egbmdv4bq3YyBt4bufIGxpw6puIHRp4bq/cAogICAgICAgICAgICAgICAgaWYgKGRlbSA+IGspIAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGNoZWNrID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBkZW0gPSAwOwogICAgICAgICAgICAgICAgaWYgKHN0LmVtcHR5KCkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY2hlY2sgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHN0LnBvcCgpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzdC5lbXB0eSgpICYmIGNoZWNrKQogICAgICAgIHsKICAgICAgICAgICAgZm9yIChpbnQgaiA9IDEgOyBqIDw9IG4gOyBqKyspCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGlmIChwW2pdID09IDApIGNvdXQgPDwgJygnOwogICAgICAgICAgICAgICAgZWxzZSBjb3V0IDw8ICcpJzsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb3V0IDw8ICdcbic7CiAgICAgICAgfQogICAgfQogICAgZWxzZQogICAgewogICAgICAgIGZvciAoaW50IGogPSAwIDsgaiA8PSAxIDsgaisrKQogICAgICAgIHsKICAgICAgICAgICAgcFtpXSA9IGo7CiAgICAgICAgICAgIHNvbChpICsgMSk7CiAgICAgICAgfQogICAgfQp9CgpzaWduZWQgbWFpbigpCnsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7CiAgICBjaW4udGllKDApOyAgY291dC50aWUoMCk7CiAgICAvL2ZyZW9wZW4oTkFNRSIuSU5QIiAsICJyIiAsIHN0ZGluKTsKICAgIC8vZnJlb3BlbihOQU1FIi5PVVQiICwgInciICwgc3Rkb3V0KTsKIAogICAgY2luID4+IG4gPj4gazsKICAgIHNvbCgxKTsKfQovLyBoYXJvbm5lZV8g