0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
154
253
242
47
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
70
225
252
252
253
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
126
253
252
252
252
156
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
76
249
253
252
127
28
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
229
253
251
125
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
187
252
252
175
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
154
252
252
164
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
51
253
252
214
28
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
179
255
253
106
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
110
252
253
189
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
252
231
19
0
0
0
19
85
134
185
85
85
47
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
252
225
0
38
113
176
231
252
252
253
252
252
240
214
38
0
0
0
0
0
0
0
0
0
0
0
57
253
253
129
128
253
253
254
253
231
225
226
225
247
253
254
197
0
0
0
0
0
0
0
0
0
0
0
57
252
252
253
252
252
227
184
84
19
0
0
13
209
252
253
171
0
0
0
0
0
0
0
0
0
0
0
57
252
252
253
252
99
31
0
0
0
0
23
209
252
252
231
19
0
0
0
0
0
0
0
0
0
0
0
32
228
252
253
151
6
0
0
0
0
101
229
252
252
202
75
0
0
0
0
0
0
0
0
0
0
0
0
0
198
253
242
66
29
29
41
141
229
253
254
253
194
63
0
0
0
0
0
0
0
0
0
0
0
0
0
0
197
252
253
252
252
252
253
252
252
252
247
121
19
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
159
252
253
252
252
252
253
252
186
68
50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
78
203
252
252
202
140
65
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
