#include <stdio.h>
#include <string.h>
#include <ctype.h>
void find_max(int arr[], int size, int *max_value)
{
for (int i = 1; i < size; i++)
{
if (arr[i] != 0)
{
if (arr[i] > *max_value)
{
*max_value = arr[i];
}
}
else
{
continue;
}
}
}
int main()
{
char str[150] = {'\0'}, result[1000][30] = {'\0'};
int cnt[30] = {0}, max = 0;
for (int k = 0; k < 4; k++)
{
fgets(str, 150, stdin);
for (int i = 0; str[i] != '\0'; i++)
{
if (isalpha(str[i]))
{
cnt[str[i] - 'A']++;
}
}
}
find_max(cnt, 26, &max);
for (int i = 0; i < 26; i++)
{
for (int j = 0; j < cnt[i]; j++)
{
result[j][i] = '*';
}
}
for (int i = 0; i <= max; i++)
{
for (int j = 25; j >= 0; j--)
{
if (result[i][j] == '*')
{
for (int k = 0; k < j; k++)
{
if (result[i][k] != '*')
{
result[i][k] = ' ';
}
}
}
}
}
for (int i = max; i >= 0; i--)
{
for (int j = 0; result[i][j] != '\0'; j++)
{
if (j > 0)
{
printf(" ");
}
printf("%c", result[i][j]);
}
printf("\n");
}
for (int i = 0; i < 26; i++)
{
if (i > 0)
{
printf(" ");
}
printf("%c", 'A' + i);
}
return 0;
}