https://ac.nowcoder.com/acm/contest/60063/C
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
//typedef __int128 LL;//2的128
typedef long long ll; //2的64
const int N =10000;
int n;
string a[N],b[N];
string ta[N],tb[N];
void init()
{
a[1]="******";
a[2]="******";
a[3]="******";
a[4]="***...";
a[5]="***...";
a[6]="***...";
b[1]="......";
b[2]="......";
b[3]="......";
b[4]="...***";
b[5]="...***";
b[6]="...***";
}
void dfs(int x)
{
int s=6*(1<<(x-1))/2; //cout<<s<<endl;
for(int i=1;i<=s;i++)
{ ta[i]=a[i];
tb[i]=b[i];
}
for(int i=1;i<=s;i++)
{
a[i]=tb[i]+tb[i];
}
for(int i=s+1;i<=2*s;i++)
{
a[i]=tb[i-s]+ta[i-s];
}
for(int i=1;i<=s;i++)
{
b[i]=ta[i]+ta[i];
}
for(int i=s+1;i<=2*s;i++)
{
b[i]=ta[i-s]+tb[i-s];
}
if(x==n)
{
for(int i=1;i<=2*s;i++)
cout<<a[i]<<endl;
return ;
}
dfs(x+1);
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
init();
cin>>n;
if(n==1)
{
for(int i=1;i<=6;i++)
cout<<a[i]<<endl;
return 0;
}
dfs(2);
return 0;
}