0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
36
132
132
132
237
143
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
160
252
252
252
252
252
252
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
211
252
252
252
252
252
221
164
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
28
0
213
252
252
252
217
169
84
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
101
242
221
95
195
252
197
72
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
81
210
252
252
221
37
3
60
23
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
108
239
252
252
220
96
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
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
11
187
252
252
252
204
109
62
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
82
252
252
252
252
252
252
247
241
122
52
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
197
245
247
250
253
253
253
253
255
253
161
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
36
52
83
108
153
250
252
253
252
252
204
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
87
153
253
252
252
204
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
172
252
252
204
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
58
219
252
252
204
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
125
250
253
252
242
88
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
85
32
0
0
65
85
206
252
252
253
244
87
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
211
230
217
217
244
252
252
252
252
202
84
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
93
252
252
252
252
252
252
252
200
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
29
131
218
252
212
131
80
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
