#include<cstdio>
#include<cstring>
#include<cmath>
#include<cstdlib>
#include<climits>
#include<cctype>
#include<iostream>
#include<algorithm>
#include<queue>
#include<vector>
#include<map>
#include<set>
#include<string>
#include<stack>
#define ll long long
#define MAX 1000
#define INF INT_MAX
#define eps 1e-8
using namespace std;
char s[MAX][MAX];
int main(){
int n;
while (scanf("%d",&n) != EOF){
for (int i=0; i<n/2+1; i++){
int k = n/2-i;
//printf("k = %d\n",k);
for (int j=0; j<k; j++) s[i][j] = '*';
for (int j=n-1,v=0; v<k; v++,j--) s[i][j] = '*';
for (int j = k; j<n-k; j++) s[i][j] = 'D';
}
for (int i=0,j = n-1; i<n/2; i++,j--){
memcpy(s[j],s[i],sizeof(s[i]));
}
for (int i=0; i<n; i++){
for (int j=0; j<n; j++) printf("%c",s[i][j]);
printf("\n");
}
}
return 0;
}
#include<cstring>
#include<cmath>
#include<cstdlib>
#include<climits>
#include<cctype>
#include<iostream>
#include<algorithm>
#include<queue>
#include<vector>
#include<map>
#include<set>
#include<string>
#include<stack>
#define ll long long
#define MAX 1000
#define INF INT_MAX
#define eps 1e-8
using namespace std;
char s[MAX][MAX];
int main(){
int n;
while (scanf("%d",&n) != EOF){
for (int i=0; i<n/2+1; i++){
int k = n/2-i;
//printf("k = %d\n",k);
for (int j=0; j<k; j++) s[i][j] = '*';
for (int j=n-1,v=0; v<k; v++,j--) s[i][j] = '*';
for (int j = k; j<n-k; j++) s[i][j] = 'D';
}
for (int i=0,j = n-1; i<n/2; i++,j--){
memcpy(s[j],s[i],sizeof(s[i]));
}
for (int i=0; i<n; i++){
for (int j=0; j<n; j++) printf("%c",s[i][j]);
printf("\n");
}
}
return 0;
}