0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
91
253
201
132
133
64
13
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
205
252
252
252
253
252
252
231
145
111
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
130
252
252
252
253
252
252
252
252
252
220
111
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
85
252
252
252
253
252
252
252
252
252
252
252
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
72
181
221
253
252
252
252
252
252
252
252
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
60
60
105
212
252
252
252
252
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
189
252
252
252
252
133
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
220
252
252
252
252
179
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
173
252
252
252
252
221
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
241
253
252
252
252
252
65
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
57
242
253
255
253
253
228
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
49
237
252
252
253
252
249
127
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
166
252
252
252
253
252
198
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
41
233
252
252
252
252
253
213
32
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
64
198
252
252
252
252
252
216
31
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
63
233
252
252
252
252
252
126
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
189
252
252
252
252
220
59
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
216
252
252
252
220
39
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
157
252
252
169
96
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
82
212
252
118
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
