#define	_USE_MATH_DEFINES
#include <iostream>
#include <algorithm>
#include <functional>
#include <vector>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <cfloat>
#include <map>
#include <queue>
#include <stack>
#include <list>
#include <string>
#include <set>
using namespace std;
int main(){
	
	vector<int> name;
	set<int> na;
	map<int,int> f;
	map<int,int> s;
	
	while(1){
		string a;
		getline(cin,a);
		if(a=="")
			break;
		string b="";
		for(int i=0;i<a.size();i++){
			if(a[i]!=',')
				b=b+a[i];
			else
				break;
		}
		int k=stoi(b);
		set<int>::iterator it=na.find(k);
		if(it==na.end()){
			na.insert(k);
		name.push_back(k);
		}
		if(f.count(k)==0)
			f[k]=1;
		else
			f[k]++;
	}
	while(1){
		string a;
		getline(cin,a);
		if(a=="")
			break;
		string b="";
		for(int i=0;i<a.size();i++){
			if(a[i]!=',')
				b=b+a[i];
			else
				break;
		}
		int k=stoi(b);
		set<int>::iterator it=na.find(k);
		if(it==na.end()){
			na.insert(k);
		name.push_back(k);
		}
		if(s.count(k)==0)
			s[k]=1;
		else
			s[k]++;
	}
	sort(name.begin(),name.end());
	for(int i=0;i<f.size();i++){
		if(f[name[i]]>=1&&s[name[i]]>=1)
			cout<<name[i]<<" "<<f[name[i]]+s[name[i]]<<endl;
		
	}
	

	
}