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
51
240
253
253
154
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
51
239
252
252
252
252
222
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
121
252
252
252
252
252
252
222
40
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
242
252
184
172
172
227
252
147
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
66
8
0
0
58
227
249
200
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
56
230
252
125
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
126
252
253
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
176
253
156
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
47
41
4
0
0
0
56
253
252
104
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
150
252
136
0
0
0
0
253
252
208
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
233
253
253
142
0
0
134
255
253
253
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
149
252
252
252
250
155
58
246
253
252
252
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
226
252
227
178
252
252
238
252
253
252
217
25
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
114
252
143
26
210
252
252
252
253
252
46
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
94
252
211
211
252
252
252
252
253
167
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
74
244
252
252
252
252
252
252
253
224
67
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
110
222
252
252
252
229
212
232
252
252
143
41
41
41
41
38
0
0
0
0
0
0
0
0
0
0
0
0
0
25
191
204
93
39
0
44
230
252
252
252
252
252
252
246
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
225
250
252
252
252
236
100
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
101
119
217
160
107
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
