#include <bits/stdc++.h>
using namespace std;
int mod = 1000000007;
inline int toInt(string s) {
  int v;
  istringstream sin(s);
  sin >> v;
  return v;
}
inline long long toll(string s) {
  long long v;
  istringstream sin(s);
  sin >> v;
  return v;
}
template <class T>
inline string toString(T x) {
  ostringstream sout;
  sout << x;
  return sout.str();
}
int dcmp(double x, double y) {
  return fabs(x - y) <= 1e-9 ? 0 : x < y ? -1 : 1;
}
void printV(vector<int> v) {
  for (int i = 0; i < v.size(); i++) {
    if (i) {
      cout << " " << v[i];
    } else
      cout << v[i];
  }
}
int fixMod(int a) { return (a % mod + mod) % mod; }
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  int n;
  cin >> n;
  int stars = n - 1;
  int Ds = 1;
  for (int i = 0; i < n / 2; i++) {
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    for (int j = 0; j < Ds; j++) {
      cout << "D";
    }
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    Ds += 2;
    stars -= 2;
    cout << endl;
  }
  for (int i = 0; i < n; i++) {
    cout << "D";
  }
  cout << endl;
  stars = 2;
  Ds = n - 2;
  for (int i = 0; i < n / 2; i++) {
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    for (int j = 0; j < Ds; j++) {
      cout << "D";
    }
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    Ds -= 2;
    stars += 2;
    cout << endl;
  }
  return 0;
}

### Prompt

In CPP, your task is to solve 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;
int mod = 1000000007;
inline int toInt(string s) {
  int v;
  istringstream sin(s);
  sin >> v;
  return v;
}
inline long long toll(string s) {
  long long v;
  istringstream sin(s);
  sin >> v;
  return v;
}
template <class T>
inline string toString(T x) {
  ostringstream sout;
  sout << x;
  return sout.str();
}
int dcmp(double x, double y) {
  return fabs(x - y) <= 1e-9 ? 0 : x < y ? -1 : 1;
}
void printV(vector<int> v) {
  for (int i = 0; i < v.size(); i++) {
    if (i) {
      cout << " " << v[i];
    } else
      cout << v[i];
  }
}
int fixMod(int a) { return (a % mod + mod) % mod; }
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  int n;
  cin >> n;
  int stars = n - 1;
  int Ds = 1;
  for (int i = 0; i < n / 2; i++) {
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    for (int j = 0; j < Ds; j++) {
      cout << "D";
    }
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    Ds += 2;
    stars -= 2;
    cout << endl;
  }
  for (int i = 0; i < n; i++) {
    cout << "D";
  }
  cout << endl;
  stars = 2;
  Ds = n - 2;
  for (int i = 0; i < n / 2; i++) {
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    for (int j = 0; j < Ds; j++) {
      cout << "D";
    }
    for (int j = 0; j < stars / 2; j++) {
      cout << "*";
    }
    Ds -= 2;
    stars += 2;
    cout << endl;
  }
  return 0;
}

```