#include<bits/stdc++.h>
using namespace std;
int main()
{
string s1, s2;
getline(cin, s1);
getline(cin, s2);
int m = s1.size();
int n = s2.size();
int EDIT[n+1][m+1];
for(int i = 0; i < m+1; i++)
{
EDIT[0][i] = i;
}
for(int i = 0; i < n+1; i++)
{
EDIT[i][0] = i;
}
for(int i = 1; i < n+1; i++)
{
for(int j = 1; j < m+1; j++)
{
if(s1[j-1] == s2[i-1])
{
EDIT[i][j] = EDIT[i-1][j-1];
}
else
{
EDIT[i][j] = 1 + min({EDIT[i-1][j-1], EDIT[i-1][j], EDIT[i][j-1]});
}
}
}
for(int i = 0; i < n+1; i++)
{
for(int j = 0; j < m+1; j++)
{
cout<<EDIT[i][j]<<" ";
}
cout<<endl;
}
int i = n, j = m;
while( i > 0)
{
if(s1[j-1] == s2[i-1])
{
i = i-1;
j = j-1;
}
else
{
if(EDIT[i][j] == 1+ EDIT[i-1][j])
{
cout<<s1[j-1]<<" is inserted"<<endl;
i = i-1;
}
else if(EDIT[i][j] == 1+EDIT[i][j-1])
{
cout<<s1[j-1]<<" is deleted"<<endl;
j = j-1;
}
else
{
cout<<s1[j-1]<<" is replaced to "<<s2[i-1]<<endl;
i = i-1;
j = j-1;
}
}
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkKewogICAgc3RyaW5nIHMxLCBzMjsKICAgIGdldGxpbmUoY2luLCBzMSk7CiAgICBnZXRsaW5lKGNpbiwgczIpOwogICAgaW50IG0gPSBzMS5zaXplKCk7CiAgICBpbnQgbiA9IHMyLnNpemUoKTsKICAgIGludCBFRElUW24rMV1bbSsxXTsKCiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbSsxOyBpKyspCiAgICB7CiAgICAgICAgRURJVFswXVtpXSA9IGk7CiAgICB9CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbisxOyBpKyspCiAgICB7CiAgICAgICAgRURJVFtpXVswXSA9IGk7CiAgICB9CgoKICAgIGZvcihpbnQgaSA9IDE7IGkgPCBuKzE7IGkrKykKICAgIHsKICAgICAgICBmb3IoaW50IGogPSAxOyBqIDwgbSsxOyBqKyspCiAgICAgICAgewogICAgICAgICAgICBpZihzMVtqLTFdID09IHMyW2ktMV0pCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEVESVRbaV1bal0gPSBFRElUW2ktMV1bai0xXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEVESVRbaV1bal0gPSAxICsgbWluKHtFRElUW2ktMV1bai0xXSwgRURJVFtpLTFdW2pdLCBFRElUW2ldW2otMV19KTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCgogICAgZm9yKGludCBpID0gMDsgaSA8IG4rMTsgaSsrKQogICAgewogICAgICAgIGZvcihpbnQgaiA9IDA7IGogPCBtKzE7IGorKykKICAgICAgICB7CiAgICAgICAgICAgIGNvdXQ8PEVESVRbaV1bal08PCIgIjsKICAgICAgICB9CiAgICAgICAgY291dDw8ZW5kbDsKICAgIH0KCiAgICBpbnQgaSA9IG4sIGogPSBtOwogICAgd2hpbGUoIGkgPiAwKQogICAgewogICAgICAgIGlmKHMxW2otMV0gPT0gczJbaS0xXSkKICAgICAgICB7CiAgICAgICAgICAgIGkgPSBpLTE7CiAgICAgICAgICAgIGogPSBqLTE7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIGlmKEVESVRbaV1bal0gPT0gIDErIEVESVRbaS0xXVtqXSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgY291dDw8czFbai0xXTw8IiBpcyBpbnNlcnRlZCI8PGVuZGw7CiAgICAgICAgICAgICAgICBpID0gaS0xOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoRURJVFtpXVtqXSA9PSAxK0VESVRbaV1bai0xXSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgY291dDw8czFbai0xXTw8IiBpcyBkZWxldGVkIjw8ZW5kbDsKICAgICAgICAgICAgICAgIGogPSBqLTE7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBjb3V0PDxzMVtqLTFdPDwiIGlzIHJlcGxhY2VkIHRvICI8PHMyW2ktMV08PGVuZGw7CiAgICAgICAgICAgICAgICBpID0gaS0xOwogICAgICAgICAgICAgICAgaiA9IGotMTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQ==