#include<bits/stdc++.h>
#define ll long long
#define pb push_back
#define ff first
#define ss second
#define mp make_pair
#define sz(x) (int)(x).size()
#define all(x) x.begin(), x.end()
using namespace std;

const char nl='\n';
const int MOD=1000000007;
const int N=200005;

string t,s;
bool sub12,tip2;
char prvi,drugi;
int cnt,cnt2,n,m,res,L,R,cen[N],pref[N][4],gr;

void solve(){
    cin>>t>>s;
    n=sz(t);m=sz(s);
    sub12=1;
    for(int i=0;i<m;i++){
        if(s[i]!='a')sub12=0;
    }
    if(sub12){
        for(int i=0;i<n;i++){
            if(t[i]=='a'){cnt++;}
        }
        res=cnt-m+1;
        cout<<res<<nl;
        for(int i=0;i<n;i++){
            if(t[i]=='a' and cnt-m+1>0){
                t[i]='*';
                cnt--;
            }
        }
        cout<<t<<nl;
    }
    else{
       tip2=0;
       res=N+10;
       for(int k=0;k<m-1;k++){
           prvi=s[k];
           drugi=s[k+1];
           L=N+10;
           R=cnt=cnt2=gr=0;
           for(int i=0;i<n;i++){
               if(t[i]==prvi)L=min(L,i);
               if(t[i]==drugi)R=i;
           }
           for(int i=L;i<=R;i++){
               if(t[i]==prvi)cnt++;
               if(t[i]==drugi)cnt2++;
           }

           if(res>cnt){
               res=cnt;
               int br=0;
               for(int i=L;i<=R;i++){
                    if(t[i]==prvi)cen[++br]=i;
               }
           }

           if(res>cnt2){
                res=cnt2;
                int br=0;
                for(int i=L;i<=R;i++){
                    if(t[i]==drugi)cen[++br]=i;
                }
           }

           for(int i=0;i<n;i++){
               pref[i+1][1]=pref[i][1];
               pref[i+1][2]=pref[i][2];
               if(t[i]==prvi)pref[i+1][1]++;
               if(t[i]==drugi)pref[i+1][2]++;
           }

           for(int i=L+1;i<R;i++){
                int temp=pref[i][1]-pref[L][1]+pref[R+1][2]-pref[i][2];
                if(res>temp){
                    res=temp;
                    tip2=1;
                    gr=i;
                }
           }

           if(tip2){
              int br=0;
              for(int i=L;i<gr;i++){
                  if(t[i]==prvi)cen[++br]=i;
              }
              for(int i=gr;i<=R;i++){
                  if(t[i]==drugi)cen[++br]=i;
              }
           }
           memset(pref,0,sizeof(pref));
        }

        cout<<res<<nl;
        for(int i=1;i<=res;i++){
            t[cen[i]]='*';
        }
        cout<<t<<nl;

    }
}
int main () {
cin.tie(NULL);
ios_base::sync_with_stdio(false);

int T=1;
//cin>>T;
while(T--){
    solve();
}

return 0;
}