0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
33
207
255
138
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
197
253
253
253
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
70
253
253
253
253
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
202
253
253
253
160
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
202
253
251
148
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
124
227
253
244
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
219
253
253
253
105
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
219
253
242
147
41
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
219
253
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
219
253
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
219
253
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
136
252
253
113
143
246
246
130
241
246
209
34
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
140
253
253
253
253
253
253
253
253
253
253
122
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
230
253
253
231
200
200
85
25
159
253
240
75
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
140
253
253
239
71
0
0
0
0
72
240
253
218
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
225
253
248
137
10
0
0
0
125
249
253
218
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
219
253
253
253
151
115
115
115
196
253
253
138
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
83
235
249
253
253
253
253
253
253
253
152
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
192
196
253
253
253
253
253
165
75
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
54
33
78
138
137
78
78
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
