#include <bits/stdc++.h>
using namespace std;
vector<string> grid(10);
vector<string> words;
bool f;
void call(int ind)
{
if(!f) {
return;
}
if(ind == words.size()) {
if(f) {
for(auto word: grid) {
cout<<word<<endl;
}
f=false;
}
return;
}
int i,j,p,q,k;
for(i=0;i<10;++i) {
for(j=0;j<10;++j) {
p=i,q=j;
for(k=0;k<words[ind].size() && p+k<10;++k) {
if(grid[p+k][q] != '-' && grid[p+k][q] != words[ind][k]) {
break;
}
}
if(k==words[ind].size()) {
vector<string> temp = grid;
for(k=0;k<words[ind].size();++k) {
grid[p+k][q] = words[ind][k];
}
call(ind+1);
grid = temp;
}
for(k=0;k<words[ind].size() && q+k<10;++k) {
if(grid[p][q+k] != '-' && grid[p][q+k] != words[ind][k]) {
break;
}
}
if(k==words[ind].size()) {
vector<string> temp = grid;
for(k=0;k<words[ind].size();++k) {
grid[p][q+k] = words[ind][k];
}
call(ind+1);
grid = temp;
}
}
}
}
int main()
{
f=true;
int i,j;
for(i=0;i<10;++i) {
cin>>grid[i];
}
string s,w;
cin>>w;
for(auto x: w) {
if(x==';') {
words.push_back(s);
s="";
} else
s+=x;
}
words.push_back(s);
call(0);
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2ZWN0b3I8c3RyaW5nPiBncmlkKDEwKTsKdmVjdG9yPHN0cmluZz4gd29yZHM7CmJvb2wgZjsKCnZvaWQgY2FsbChpbnQgaW5kKQp7CiAgICBpZighZikgewogICAgICAgIHJldHVybjsKICAgIH0KICAgIGlmKGluZCA9PSB3b3Jkcy5zaXplKCkpIHsKICAgICAgICBpZihmKSB7CiAgICAgICAgICAgIGZvcihhdXRvIHdvcmQ6IGdyaWQpIHsKICAgICAgICAgICAgICAgIGNvdXQ8PHdvcmQ8PGVuZGw7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZj1mYWxzZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgaW50IGksaixwLHEsazsKICAgIGZvcihpPTA7aTwxMDsrK2kpIHsKICAgICAgICBmb3Ioaj0wO2o8MTA7KytqKSB7CiAgICAgICAgICAgIHA9aSxxPWo7CiAgICAgICAgICAgIGZvcihrPTA7azx3b3Jkc1tpbmRdLnNpemUoKSAmJiBwK2s8MTA7KytrKSB7CiAgICAgICAgICAgICAgICBpZihncmlkW3Ara11bcV0gIT0gJy0nICYmIGdyaWRbcCtrXVtxXSAhPSB3b3Jkc1tpbmRdW2tdKSB7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKGs9PXdvcmRzW2luZF0uc2l6ZSgpKSB7CiAgICAgICAgICAgICAgICB2ZWN0b3I8c3RyaW5nPiB0ZW1wID0gZ3JpZDsKICAgICAgICAgICAgICAgIGZvcihrPTA7azx3b3Jkc1tpbmRdLnNpemUoKTsrK2spIHsKICAgICAgICAgICAgICAgICAgICBncmlkW3Ara11bcV0gPSB3b3Jkc1tpbmRdW2tdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2FsbChpbmQrMSk7CiAgICAgICAgICAgICAgICBncmlkID0gdGVtcDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZm9yKGs9MDtrPHdvcmRzW2luZF0uc2l6ZSgpICYmIHErazwxMDsrK2spIHsKICAgICAgICAgICAgICAgIGlmKGdyaWRbcF1bcStrXSAhPSAnLScgJiYgZ3JpZFtwXVtxK2tdICE9IHdvcmRzW2luZF1ba10pIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYoaz09d29yZHNbaW5kXS5zaXplKCkpIHsKICAgICAgICAgICAgICAgIHZlY3RvcjxzdHJpbmc+IHRlbXAgPSBncmlkOwogICAgICAgICAgICAgICAgZm9yKGs9MDtrPHdvcmRzW2luZF0uc2l6ZSgpOysraykgewogICAgICAgICAgICAgICAgICAgIGdyaWRbcF1bcStrXSA9IHdvcmRzW2luZF1ba107CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjYWxsKGluZCsxKTsKICAgICAgICAgICAgICAgIGdyaWQgPSB0ZW1wOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgppbnQgbWFpbigpCnsKICAgIGY9dHJ1ZTsKCiAgICBpbnQgaSxqOwogICAgZm9yKGk9MDtpPDEwOysraSkgewogICAgICAgIGNpbj4+Z3JpZFtpXTsKICAgIH0KCiAgICBzdHJpbmcgcyx3OwogICAgY2luPj53OwoKICAgIGZvcihhdXRvIHg6IHcpIHsKICAgICAgICBpZih4PT0nOycpIHsKICAgICAgICAgICAgd29yZHMucHVzaF9iYWNrKHMpOwogICAgICAgICAgICBzPSIiOwogICAgICAgIH0gZWxzZQogICAgICAgICAgICBzKz14OwogICAgfQogICAgd29yZHMucHVzaF9iYWNrKHMpOwogICAgY2FsbCgwKTsKCiAgICByZXR1cm4gMDsKfQ==