0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
64
64
255
183
253
140
121
121
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
91
212
240
240
240
246
246
253
252
252
252
252
252
79
0
0
0
0
0
0
0
0
0
0
0
0
0
133
248
252
202
252
252
252
252
253
252
252
252
252
252
198
0
0
0
0
0
0
0
0
0
0
0
0
0
226
252
252
161
239
172
172
102
110
39
39
39
165
252
246
78
0
0
0
0
0
0
0
0
0
0
0
0
226
252
252
104
44
0
0
0
0
0
0
0
14
53
53
20
0
0
0
0
0
0
0
0
0
0
0
0
128
252
252
66
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
94
252
252
96
41
41
19
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
213
252
252
252
252
203
203
161
104
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
81
252
252
252
252
252
252
253
252
213
105
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
81
252
252
252
252
252
252
253
252
252
252
185
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
158
234
146
183
197
191
253
253
253
253
129
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
11
2
6
7
6
139
241
252
252
249
76
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
217
252
252
128
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
213
252
252
246
78
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
110
244
252
252
220
20
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
14
0
0
32
54
187
186
245
252
252
252
212
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
158
193
173
173
219
252
253
252
252
252
252
243
108
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
109
245
252
252
252
252
253
252
252
252
245
108
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
177
241
252
252
252
253
246
238
238
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
132
252
252
120
69
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
