#include <bits/stdc++.h>

using namespace std;

bool sveA(string s)
{
    for(int i = 0; i<s.size(); i++)
    {
        if(s[i] != 'a')
            return false;
    }
    return true;
}
int main()
{
    string T,S;
    cin >> T >> S;
    if(S == "a") // Testcase 1
    {
        int cnt = 0;
        for(int i = 0; i<T.size(); i++)
        {
            if(T[i] == 'a')
            {
                T[i] = '*';
                cnt++;
            }
        }
        cout << cnt << endl << T << endl;
    }
    else if(sveA(S))
    {

        int cnta = 0,cntpom = 0;
        for(int i = 0; i<T.size(); i++)
        {
            if(T[i] == 'a')
                cnta++;
        }
        for(int i = 0; i<T.size(); i++)
        {
            if(T[i] == 'a' && cnta>=S.size())
            {
                T[i] = '*';
                cnta--;
                cntpom++;
            }
        }
        cout << cntpom << endl << T << endl;
    }
    else if(S == "ab") // Testcase 3 - min(as pre last b, bs posle first a)
    {
        int as = 0,bs = 0;
        bool fa = false,fb = false;
        for(int i = 0; i<T.size(); i++)
        {
            if(T[i] == 'a' && !fa)
            {
                fa = true;
            }
            if(T[i] == 'b' && fa)
            {
                bs++;
            }
        }
        for(int i = T.size()-1; i>=0; i--)
        {
            if(T[i] == 'b' && !fb)
            {
                fb = true;
            }
            if(T[i] == 'a' && fb)
            {
                as++;
            }
        }
        int cnt = 0;
        if(as < bs)
        {
            for(int i = 0; i<T.size(); i++)
            {
                if(T[i] == 'a' && as != 0)
                {
                    T[i] = '*';
                    as--;
                    cnt++;
                }
            }
        }
        else
        {
            for(int i = T.size()-1; i>=0; i--)
            {
                if(T[i] == 'b' && bs != 0)
                {
                    T[i] = '*';
                    bs--;
                    cnt++;
                }
            }
        }
        cout << cnt << endl << T << endl;
    }
    else if(S == "abc")
    {
        int prA,poslC,prB,poslB;
        for(int i = 0; i<T.size(); i++)
        {
            if(T[i] == 'a')
            {
                prA = i;
                break;
            }
        }
        for(int i = T.size(); i>=0; i--)
        {
            if(T[i] == 'c')
            {
                poslC = i;
                break;
            }
        }
        for(int i = prA+1; i<T.size(); i++)
        {
            if(T[i] == 'b')
            {
                prB = i;
                break;
            }
        }
        for(int i = poslC; i>=0; i--)
        {
            if(T[i] == 'b')
            {
                poslB = i;
                break;
            }
        }
        int cnt1 = 0,cnt2 = 0,cnt3 = 0, cnt4 = 0;
        for(int i = prB+1; i<T.size(); i++)
        {
            if(T[i] == 'c')
            {
                cnt1++;
            }
        }
        for(int i = prA+1; i<poslC; i++)
        {
            if(T[i] == 'b')
            {
                cnt2++;
            }
        }
        for(int i = poslB; i>=0; i--)
        {
            if(T[i] == 'a')
            {
                cnt3++;
            }
        }
        for(int i = poslC; i> prA; i--)
        {
            if(T[i] == 'b')
            {
                cnt4++;
            }
        }
        int minc = min(cnt1,min(cnt2,min(cnt3,cnt4)));
        //cout << prA << " " << prB << " " << poslB << " " << poslC << endl;
        if(cnt1 == minc)
        {
            for(int i = prB; i<T.size(); i++)
            {
                if(T[i] == 'c')
                {
                    T[i] = '*';
                }
            }
        }
        else if(cnt2 == minc)
        {
            for(int i = prA; i<poslC; i++)
            {
                if(T[i] == 'b')
                    T[i] = '*';
            }
        }
        else if(cnt3 == minc)
        {
            for(int i = poslB; i>=0; i--)
            {
                if(T[i] == 'a')
                    T[i] = '*';
            }
        }
        else
        {
            for(int i = poslC; i>=prA; i--)
            {
                if(T[i] == 'b')
                    T[i] = '*';
            }
        }

        cout << minc << endl << T << endl;

    }
    return 0;
}