#include <bits/stdc++.h> #define int long long #define MULTITEST false using namespace std; char a[2025][2025]; void solve () { int k; cin>>k; vector<pair<int,int> >sizes; int first = 0; while(k){ int h,w,best=0; for(int i=1;i<=2000;i++){ for(int j=1;j<=2025;j++){ int z = i * (i-1)/2 * j * (j-1)/2; if(z<=k&&z>best&&(!first||i<=10)){ best=z; h=i; w=j; } } } //cout<<h<<' '<<w<<endl; sizes.push_back({h,w}); k-=best; first=1; } for(int i=0;i<2025;i++){ for(int j=0;j<2025;j++){ a[i][j]='.'; } } int start=0; for(auto i:sizes){ int x = i.first; int y = i.second; assert(start+x<=2025); for(int j=start;j<start+x;j++){ for(int k=0;k<y;k++){ a[j][k]='#'; } } start = start+x+1; } cout<<2025<<' '<<2025<<endl; for(int i=0;i<2025;i++){ for(int j=0;j<2025;j++){ cout<<a[i][j]; } cout<<endl; } } signed main() { ios_base::sync_with_stdio(0); cin.tie(NULL); cout.precision(30); int T = 1; if (MULTITEST) cin >> T; for (int t = 0; t < T; t ++) solve(); }