1 #include <iostream>
2 #include <cstdio>
3 #include <cstdlib>
4 #include <cmath>
5 #include <cctype>
6 #include <cstring>
7
8 #include <vector>
9 #include <deque>
10 #include <list>
11 #include <map>
12 #include <set>
13 #include <stack>
14 #include <queue>
15 #include <algorithm>
16 #include <string>
17
18
19 #define MAXD 99999999
20 using namespace std;
21
22
23
24 int prim[100];
25
26
27 int isprim(int n)
28 {
29 int k=(int)sqrt(double(n));
30 int i;
31
32 for(i=2;i<=k;i++)
33 {
34 if(n%i==0)
35 return 0;
36 }
37
38 return 1;
39 }
40
41
42
43
44
45
46
47 int main()
48 {
49
50 int i,j,k;
51
52 int n;
53
54 k=0;
55
56 for(i=2;i<150;i++)
57 {
58
59 if(isprim(i))
60 {prim[k++]=i;}
61 }
62
63
64
65 char a[100],b[100];
66
67
68 while(scanf("%s %s",a,b)!=EOF)
69 {
70 getchar();
71
72
73 if(strcmp(a,"0")==0)
74 break;
75
76 if(strcmp(b,"0")==0)
77 break;
78
79
80
81
82
83 int aa[100],bb[100];
84
85 int len1=0;
86
87
88 for(i=0;a[i];)
89 {
90
91 if(isdigit(a[i]))
92 {int temp=0;
93
94 while(a[i]&&isdigit(a[i]))
95 {
96 temp*=10;
97 temp+=a[i]-'0';
98 i++;
99
100 }
101
102
103 aa[len1++]=temp;
104
105 }
106 else
107 i++;
108 }
109
110
111 int len2=0;
112
113 for(i=0;b[i];)
114 {
115 if(isdigit(b[i]))
116 {
117 int temp=0;
118
119 while(b[i]&&isdigit(b[i]))
120 {
121 temp*=10;
122 temp+=b[i]-'0';
123 i++;
124
125 }
126
127
128 bb[len2++]=temp;
129
130
131 }
132 else
133 i++;
134 }
135
136
137
138
139
140
141 len1--;
142 len2--;
143
144
145 int c[100];
146
147 int len3=99;
148
149
150 int temp=0;
151
152 int fag=0;
153
154
155
156 while((len1>=0)&&(len2>=0))
157 {
158
159 temp+=aa[len1]+bb[len2];
160
161 c[len3--]=temp%prim[fag];
162
163
164 temp/=prim[fag];
165
166 fag++;
167
168 len1--;
169 len2--;
170 }
171
172
173
174
175 while(len1>=0)
176 {
177 temp+=aa[len1];
178 c[len3--]=temp%prim[fag];
179
180 temp/=prim[fag];
181 fag++;
182 len1--;
183
184 }
185
186 while(len2>=0)
187 {
188 temp+=bb[len2];
189 c[len3--]=temp%prim[fag];
190
191 temp/=prim[fag];
192
193 fag++;
194 len2--;
195
196 }
197
198
199
200 while(temp)
201 {
202 c[len3--]=temp%prim[fag];
203
204
205 temp/=prim[fag];
206
207 fag++;
208 }
209
210
211 int tag=0;
212
213
214
215 for(i=len3+1;i<100;i++)
216 {
217
218 if(tag==0)
219 {
220 cout<<c[i];
221 tag=1;
222
223 }
224 else
225 {cout<<','<<c[i];}
226 }
227
228 cout<<endl;
229 }
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260 return 0;
261 }