//计数排序的思想:根据ASCII先统计第二行字符串各字符出现次数
//再遍历第一行字符串
#include<iostream>
#include<cstring>
#include<string>
using namespace std;
int s[128];
int main(){
    string str1,str2;
    while(getline(cin,str1)){
        if(str1=="#")break;
        getline(cin,str2);
        memset(s,0,sizeof(s));//重置数组为0
        for(int i=0;i<str2.size();i++){
            s[str2[i]]++;
        }
        for(int i=0;i<str1.size();i++){
            printf("%c %d\n",str1[i],s[str1[i]]);
        }
    }
    return 0;
}