#include <bits/stdc++.h>
using namespace std;
class Graph {
 public:
  vector<vector<int> > adj_list;
  Graph(int n) : adj_list(vector<vector<int> >(n)) {}
  void add_edge(int u, int v, bool bidirectional = true) {
    adj_list[u].push_back(v);
    if (bidirectional) {
      adj_list[v].push_back(u);
    }
  }
};
void print_err() { cerr << "\n"; }
template <class T, class... Arg>
void print_err(T x, Arg &&...args) {
  cerr << x << " ";
  print_err(args...);
}
template <class T>
void print_container(T &cont) {
  for (auto iter : cont) {
    cerr << iter << " ";
  }
  cerr << "\n";
}
void in() {}
template <class T, class... Arg>
void in(T &x, Arg &&...args) {
  cin >> x;
  in(args...);
}
template <class T>
void in_c(T &container, int start, int end) {
  for (int i = start; i < end; ++i) {
    cin >> container[i];
  }
}
inline void kick_temp(int test) { cout << "Case #" << test << ": "; }
vector<int> d4x{0, 0, 1, -1};
vector<int> d4y{-1, 1, 0, 0};
vector<int> d8x{0, 0, 1, -1, 1, 1, -1, -1};
vector<int> d8y{1, -1, 0, 0, -1, 1, 1, -1};
void solve(int test) {
  ;
  int i, j, n, m;
  in(n, m);
  string h(m, '#');
  string d(m - 1, '.');
  bool left = false;
  for (i = 0; i < n; ++i) {
    if (i & 1) {
      if (left) {
        cout << "#";
        cout << d;
      } else {
        cout << d;
        cout << "#";
      }
      left = !left;
    } else {
      cout << h;
    }
    cout << "\n";
  }
}
int main() {
  int i = 1;
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  solve(i);
  return 0;
}

### Prompt

Your task is to create a CPP solution to the following problem:

Fox Ciel starts to learn programming. The first task is drawing a fox! However, that turns out to be too hard for a beginner, so she decides to draw a snake instead.

A snake is a pattern on a n by m table. Denote c-th cell of r-th row as (r, c). The tail of the snake is located at (1, 1), then it's body extends to (1, m), then goes down 2 rows to (3, m), then goes left to (3, 1) and so on.

Your task is to draw this snake for Fox Ciel: the empty cells should be represented as dot characters ('.') and the snake cells should be filled with number signs ('#').

Consider sample tests in order to understand the snake pattern.

Input

The only line contains two integers: n and m (3 ≤ n, m ≤ 50). 

n is an odd number.

Output

Output n lines. Each line should contain a string consisting of m characters. Do not output spaces.

Examples

Input

3 3


Output

###
..#
###


Input

3 4


Output

####
...#
####


Input

5 3


Output

###
..#
###
#..
###


Input

9 9


Output

#########
........#
#########
#........
#########
........#
#########
#........
#########

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
class Graph {
 public:
  vector<vector<int> > adj_list;
  Graph(int n) : adj_list(vector<vector<int> >(n)) {}
  void add_edge(int u, int v, bool bidirectional = true) {
    adj_list[u].push_back(v);
    if (bidirectional) {
      adj_list[v].push_back(u);
    }
  }
};
void print_err() { cerr << "\n"; }
template <class T, class... Arg>
void print_err(T x, Arg &&...args) {
  cerr << x << " ";
  print_err(args...);
}
template <class T>
void print_container(T &cont) {
  for (auto iter : cont) {
    cerr << iter << " ";
  }
  cerr << "\n";
}
void in() {}
template <class T, class... Arg>
void in(T &x, Arg &&...args) {
  cin >> x;
  in(args...);
}
template <class T>
void in_c(T &container, int start, int end) {
  for (int i = start; i < end; ++i) {
    cin >> container[i];
  }
}
inline void kick_temp(int test) { cout << "Case #" << test << ": "; }
vector<int> d4x{0, 0, 1, -1};
vector<int> d4y{-1, 1, 0, 0};
vector<int> d8x{0, 0, 1, -1, 1, 1, -1, -1};
vector<int> d8y{1, -1, 0, 0, -1, 1, 1, -1};
void solve(int test) {
  ;
  int i, j, n, m;
  in(n, m);
  string h(m, '#');
  string d(m - 1, '.');
  bool left = false;
  for (i = 0; i < n; ++i) {
    if (i & 1) {
      if (left) {
        cout << "#";
        cout << d;
      } else {
        cout << d;
        cout << "#";
      }
      left = !left;
    } else {
      cout << h;
    }
    cout << "\n";
  }
}
int main() {
  int i = 1;
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  solve(i);
  return 0;
}

```