#include <stdio.h>
#include <string.h>

#define TEKST_MAX 200000
#define REC_MAX   10

int main()
{
    int Sadrzi(char, char[]);
    char T[TEKST_MAX] = {}, R[REC_MAX] = {};

    gets(T);
    gets(R);

    int TrazenaSlova[26] = {}, SlovaUTekstu[26] = {};

    int nT = strlen(T);

    for (int i = 0; i < nT; ++i)
    {
        SlovaUTekstu[T[i] - 'a']++;
    }

    int nR = strlen(R);

    for (int i = 0; i < nR; ++i)
    {
        TrazenaSlova[R[i] - 'a']++;
    }

    char NajmanjeSlovo = MinSlova(SlovaUTekstu, R) + 'a';

    for (int i = 0; i < nT; ++i)
    {
        if (T[i] == NajmanjeSlovo)
        {
            T[i] = '*';
        }
    }

    printf("%d\n", SlovaUTekstu[NajmanjeSlovo - 'a']);
    puts(T);
}

int MinSlova(int Niz[], char OdSlova[])
{
    int Sadrzi(char, char[]);
    int i = 0, min, minPozicija;

    for (i; i < 26; ++i)
    {
        if (Niz[i] != 0 && Sadrzi(i + 'a', OdSlova))
        {
            min = Niz[i];
            minPozicija = i;
            break;
        }
    }

    for (i += 1; i < 26; ++i)
    {
        if (Niz[i] != 0 && Niz[i] < min && Sadrzi(i + 'a', OdSlova))
        {
            min = Niz[i];
            minPozicija = i;
        }
    }

    return minPozicija;
}

int Sadrzi(char c, char C[])
{
    int n = strlen(C);

    for (int i = 0; i < n; ++i)
    {
        if (C[i] == c)
        {
            return 1;
        }
    }
    return 0;
}