#include <bits/stdc++.h>
using namespace std;
int main(){
string s[10];//用字符串数组去存
s[0] = {"*****,*___*,*___*,*___*,*****"};//存的是字符串
s[1] = {"____*,____*,____*,____*,____*"};
s[2] = {"*****,____*,*****,*____,*****"};
s[3] = {"*****,____*,*****,____*,*****"};
s[4] = {"*___*,*___*,*****,____*,____*"};
s[5] = {"*****,*____,*****,____*,*****"};
s[6] = {"*****,*____,*****,*___*,*****"};
s[7] = {"*****,____*,____*,____*,____*"};
s[8] = {"*****,*___*,*****,*___*,*****"};
s[9] = {"*****,*___*,*****,____*,*****"};
int a, b ,c, d,j;
int k = 1;
while(cin >> a >> b >> c >> d){
cout << "Sample" << k << endl;
k++;
/**一行一行输出,只需关注列的变化 0~4,6~10,12~16,18~22,24~28*/
//第一行
j = 0;
while(j<5){
cout << s[a][j];
j++;
}
cout << ' ';
j = 0;
while(j<5){
cout << s[b][j];
j++;
}
cout << ' ';
j = 0;
while(j<5){
cout << s[c][j];
j++;
}
cout << ' ';
j = 0;
while(j<5){
cout << s[d][j];
j++;
}
cout << endl;
//第二行
j = 6;
while(j < 11){
cout << s[a][j];
j++;
}
cout << ' ';
j = 6;
while(j < 11){
cout << s[b][j];
j++;
}
cout << ' ';
j = 6;
while(j < 11){
cout << s[c][j];
j++;
}
cout << ' ';
j = 6;
while(j < 11){
cout << s[d][j];
j++;
}
cout << endl;
//第三行
j = 12;
while(j < 17){
cout << s[a][j];
j++;
}
cout << ' ';
j = 12;
while(j < 17){
cout << s[b][j];
j++;
}
cout << ' ';
j = 12;
while(j < 17){
cout << s[c][j];
j++;
}
cout << ' ';
j = 12;
while(j < 17){
cout << s[d][j];
j++;
}
cout << endl;
//第四行
j = 18;
while(j < 23){
cout << s[a][j];
j++;
}
cout << ' ';
j = 18;
while(j < 23){
cout << s[b][j];
j++;
}
cout << ' ';
j = 18;
while(j < 23){
cout << s[c][j];
j++;
}
cout << ' ';
j = 18;
while(j < 23){
cout << s[d][j];
j++;
}
cout << endl;
//第五行
j = 24;
while(j < 29){
cout << s[a][j];
j++;
}
cout << ' ';
j = 24;
while(j < 29){
cout << s[b][j];
j++;
}
cout << ' ';
j = 24;
while(j < 29){
cout << s[c][j];
j++;
}
cout << ' ';
j = 24;
while(j < 29){
cout << s[d][j];
j++;
}
cout << endl;
}
}