#include <bits/stdc++.h> using namespace std; typedef long long ll; const ll MAX = (ll)4e13; const int N = 2025; char soln[N][N]; int main(){ ll k; cin >> k; vector<int> take; int res = 0; int p = 1; for(int i = 0 ; i < N; i ++ ){ for(int j = 0 ; j < N; j ++ ){ soln[i][j] = '.'; } } int big = 0; for(int i = N; i >= 2; i -- ){ ll f = i * 1ll * (i - 1) / 2ll; for(int j = N; j >= i; j -- ){ ll g = j * 1ll * (j - 1) / 2ll; ll mi = f * g; while(mi <= k){ res += i + 1; for(int x = 0; x < i; x ++ ){ for(int y = 0; y < j; y ++ ){ soln[p + x][y] = '#'; } } big = max(big, j); p += i + 1; take.push_back(i); k -= mi; } } } cout << p - 1 << " " << big << "\n"; for(int i = 0 ; i < big; i ++ ){ for(int j = 0; j < p - 1; j ++ ){ cout << soln[j][i]; } cout << "\n"; } return 0; }