0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
141
216
216
91
26
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
82
243
253
252
252
252
244
56
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
185
185
85
215
252
253
196
196
252
253
215
81
0
0
0
0
0
0
0
0
0
0
0
0
0
0
26
210
252
253
252
252
252
178
9
10
128
253
252
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
120
253
253
255
247
225
125
0
0
0
51
255
253
216
16
0
0
0
0
0
0
0
0
0
0
0
0
95
225
252
252
247
177
0
0
0
0
0
26
253
252
214
15
0
0
0
0
0
0
0
0
0
0
0
38
229
252
252
252
100
76
0
0
0
0
0
113
253
252
252
28
0
0
0
0
0
0
0
0
0
0
0
213
253
252
252
102
0
0
0
0
0
0
0
113
253
252
252
28
0
0
0
0
0
0
0
0
0
0
98
253
254
253
194
13
0
0
0
0
0
0
0
226
254
253
253
28
0
0
0
0
0
0
0
0
0
38
234
252
253
214
19
0
0
0
0
0
0
0
0
225
253
252
233
22
0
0
0
0
0
0
0
0
0
144
252
252
253
158
0
0
0
0
0
0
0
0
67
246
253
252
168
0
0
0
0
0
0
0
0
0
76
243
252
252
178
9
0
0
0
0
0
0
0
0
134
252
253
227
43
0
0
0
0
0
0
0
0
0
141
253
253
253
114
0
0
0
0
0
0
0
0
70
253
253
254
184
0
0
0
0
0
0
0
0
0
0
141
252
252
252
88
0
0
0
0
0
0
0
120
225
252
252
247
65
0
0
0
0
0
0
0
0
0
0
141
252
252
252
0
0
0
0
0
0
0
126
253
252
252
252
100
0
0
0
0
0
0
0
0
0
0
0
91
252
252
252
101
0
0
0
0
26
150
249
253
252
252
52
0
0
0
0
0
0
0
0
0
0
0
0
26
244
253
253
192
116
66
141
204
253
253
253
254
247
137
13
0
0
0
0
0
0
0
0
0
0
0
0
0
82
215
252
253
252
252
252
253
252
252
252
247
103
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
231
253
252
252
252
253
252
252
177
50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
91
165
252
252
241
139
52
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
