package 刷题.普及;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class 垂直柱状图 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
List<String>list=new ArrayList<String>();
for (int i = 0; i < 4; i++) {
list.add(scanner.nextLine().replaceAll(" ", ""));
}
int []nums=new int[26];
int max=0;
for (int i = 0; i < list.size(); i++) {
String str = list.get(i);
for (int j = 0; j < str.length(); j++) {
if (str.charAt(j)>='A'&&str.charAt(j)<='Z') {
int index=str.charAt(j)-'A';
nums[index]++;
if (nums[index]>max) {
max=nums[index];
}
}
}
}
char [][]view=new char[max][26];
for (int i = 0; i < nums.length; i++) {
if (nums[i]!=0) {
for (int j = 0; j < view.length; j++) {
view[j][i]='*';
nums[i]--;
if (nums[i]==0) {
break;
}
}
}
}
for (int i = view.length-1; i >=0; i--) {
for (int j =0 ; j <=view[0].length-1 ; j++) {
if (j==view[0].length-1) {
System.out.print(view[i][j]);
}else {
System.out.print(view[i][j]+" ");
}
}
System.out.println();
}
for (int i = 0; i < 26; i++) {
if (i==25) {
System.out.print((char)(i+'A'));
}else {
System.out.print((char)(i+'A')+" ");
}
}
}
}