#include <iostream>
#include <string>
using namespace std;
int main ()
{
string str, str1, str2;
int i=0, SecondStringSize = 0;
getline(cin, str);
getline(cin, str1);
getline(cin, str2);
cout << "str is ";
for(auto c : str)
cout << "\'" << c << "\'" << ", ";
cout << endl;
cout << "str1 is ";
for(auto c : str1)
cout << "\'" << c << "\'" << ", ";
cout << endl;
cout << "str2 is ";
for(auto c : str2)
cout << "\'" << c << "\'" << ", ";
cout << endl;
SecondStringSize = str1.size();
cout << "изначально SSS = " << SecondStringSize << endl;
while (SecondStringSize != string::npos)
{
i++;
str.replace(SecondStringSize, str1.size(), str2);
cout << "После " << i << " замены str = " << str << endl;
SecondStringSize = str.find(str1, SecondStringSize);
cout << "a SSS = " << SecondStringSize << endl << endl;
}
cout << "Ответ " <<str<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwppbnQgbWFpbiAoKQp7CiAgICBzdHJpbmcgc3RyLCBzdHIxLCBzdHIyOwogICAgaW50IGk9MCwgU2Vjb25kU3RyaW5nU2l6ZSA9IDA7CiAgICBnZXRsaW5lKGNpbiwgc3RyKTsKICAgIGdldGxpbmUoY2luLCBzdHIxKTsKICAgIGdldGxpbmUoY2luLCBzdHIyKTsKICAgIGNvdXQgPDwgInN0ciBpcyAiOwogICAgZm9yKGF1dG8gYyA6IHN0cikKICAgIAljb3V0IDw8ICJcJyIgPDwgYyA8PCAiXCciIDw8ICIsICI7CiAgICBjb3V0IDw8IGVuZGw7CiAgICAKICAgIGNvdXQgPDwgInN0cjEgaXMgIjsKICAgIGZvcihhdXRvIGMgOiBzdHIxKQogICAgCWNvdXQgPDwgIlwnIiA8PCBjIDw8ICJcJyIgPDwgIiwgIjsKICAgIGNvdXQgPDwgZW5kbDsKICAgIAogICAgY291dCA8PCAic3RyMiBpcyAiOwogICAgZm9yKGF1dG8gYyA6IHN0cjIpCiAgICAJY291dCA8PCAiXCciIDw8IGMgPDwgIlwnIiA8PCAiLCAiOwogICAgY291dCA8PCBlbmRsOwogICAgU2Vjb25kU3RyaW5nU2l6ZSA9IHN0cjEuc2l6ZSgpOwogICAgY291dCA8PCAi0LjQt9C90LDRh9Cw0LvRjNC90L4gU1NTID0gIiA8PCBTZWNvbmRTdHJpbmdTaXplIDw8IGVuZGw7CiAgICB3aGlsZSAoU2Vjb25kU3RyaW5nU2l6ZSAhPSBzdHJpbmc6Om5wb3MpCiAgICB7CiAgICAJaSsrOwogICAgICAgIHN0ci5yZXBsYWNlKFNlY29uZFN0cmluZ1NpemUsIHN0cjEuc2l6ZSgpLCBzdHIyKTsKICAgICAgICBjb3V0IDw8ICLQn9C+0YHQu9C1ICIgPDwgaSA8PCAiINC30LDQvNC10L3RiyBzdHIgPSAiIDw8IHN0ciA8PCBlbmRsOwogICAgICAgIFNlY29uZFN0cmluZ1NpemUgPSBzdHIuZmluZChzdHIxLCBTZWNvbmRTdHJpbmdTaXplKTsKICAgIAljb3V0IDw8ICJhIFNTUyA9ICIgPDwgU2Vjb25kU3RyaW5nU2l6ZSA8PCBlbmRsIDw8IGVuZGw7CiAgICB9CiAgICBjb3V0IDw8ICLQntGC0LLQtdGCICIgPDxzdHI8PGVuZGw7CiAgICByZXR1cm4gMDsKfQ==