#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
const double PI = acos(-1);
long long power(long long x, long long y) {
  if (y == 0)
    return 1;
  else if (y == 1)
    return x;
  long long r = power(x, y / 2);
  if (y % 2 == 0)
    return (r * r);
  else
    return (r * r * x);
}
bool primechecker(long long i) {
  bool valid = true;
  for (int j = 2; j <= sqrt(i); j++) {
    if (i % j == 0) {
      valid = false;
      break;
    }
  }
  if (valid && i != 1)
    return true;
  else
    return false;
}
vector<bool> prime(10000001, true);
void sieveprime() {
  prime[0] = false;
  prime[1] = false;
  for (int i = 2; i < prime.size(); i++) {
    if (prime[i] == true) {
      for (int j = i + i; j <= 10000000; j += i) prime[j] = false;
    }
  }
  return;
}
int main() {
  int n;
  cin >> n;
  int s = n / 2 + 1;
  int p = n / 2 + 1;
  for (int i = 1; i <= n / 2 + 1; i++) {
    for (int j = 1; j <= n; j++) {
      if (j < s || j > p) {
        cout << '*';
      } else {
        cout << 'D';
      }
    }
    cout << "\n";
    s--;
    p++;
  }
  s += 2;
  p -= 2;
  for (int i = n / 2 + 2; i <= n; i++) {
    for (int j = 1; j <= n; j++) {
      if (j < s || j > p) {
        cout << '*';
      } else {
        cout << 'D';
      }
    }
    cout << "\n";
    s++;
    p--;
  }
  return 0;
}

### Prompt

Create a solution in CPP for the following problem:

Twilight Sparkle once got a crystal from the Crystal Mine. A crystal of size n (n is odd; n > 1) is an n × n matrix with a diamond inscribed into it.

You are given an odd integer n. You need to draw a crystal of size n. The diamond cells of the matrix should be represented by character "D". All other cells of the matrix should be represented by character "*". Look at the examples to understand what you need to draw.

Input

The only line contains an integer n (3 ≤ n ≤ 101; n is odd). 

Output

Output a crystal of size n.

Examples

Input

3


Output

*D*
DDD
*D*


Input

5


Output

**D**
*DDD*
DDDDD
*DDD*
**D**


Input

7


Output

***D***
**DDD**
*DDDDD*
DDDDDDD
*DDDDD*
**DDD**
***D***

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
const double PI = acos(-1);
long long power(long long x, long long y) {
  if (y == 0)
    return 1;
  else if (y == 1)
    return x;
  long long r = power(x, y / 2);
  if (y % 2 == 0)
    return (r * r);
  else
    return (r * r * x);
}
bool primechecker(long long i) {
  bool valid = true;
  for (int j = 2; j <= sqrt(i); j++) {
    if (i % j == 0) {
      valid = false;
      break;
    }
  }
  if (valid && i != 1)
    return true;
  else
    return false;
}
vector<bool> prime(10000001, true);
void sieveprime() {
  prime[0] = false;
  prime[1] = false;
  for (int i = 2; i < prime.size(); i++) {
    if (prime[i] == true) {
      for (int j = i + i; j <= 10000000; j += i) prime[j] = false;
    }
  }
  return;
}
int main() {
  int n;
  cin >> n;
  int s = n / 2 + 1;
  int p = n / 2 + 1;
  for (int i = 1; i <= n / 2 + 1; i++) {
    for (int j = 1; j <= n; j++) {
      if (j < s || j > p) {
        cout << '*';
      } else {
        cout << 'D';
      }
    }
    cout << "\n";
    s--;
    p++;
  }
  s += 2;
  p -= 2;
  for (int i = n / 2 + 2; i <= n; i++) {
    for (int j = 1; j <= n; j++) {
      if (j < s || j > p) {
        cout << '*';
      } else {
        cout << 'D';
      }
    }
    cout << "\n";
    s++;
    p--;
  }
  return 0;
}

```