0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
222
237
50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
219
252
252
237
86
85
85
76
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
144
252
252
252
252
253
252
252
246
197
135
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
107
253
252
252
252
252
253
252
252
252
252
253
224
53
0
0
0
0
0
0
0
0
0
0
0
0
0
29
252
253
252
252
252
252
253
252
252
236
189
253
252
227
47
0
0
0
0
0
0
0
0
0
0
0
0
29
253
255
253
196
0
0
0
0
0
0
0
192
253
253
225
0
0
0
0
0
0
0
0
0
0
0
19
181
252
253
223
52
0
0
0
0
0
0
0
12
228
252
223
0
0
0
0
0
0
0
0
0
0
0
88
252
252
253
58
0
0
0
0
0
0
0
0
0
225
252
223
0
0
0
0
0
0
0
0
0
0
0
197
252
252
178
9
0
0
0
0
0
0
0
0
76
243
252
223
0
0
0
0
0
0
0
0
0
0
0
197
252
252
140
0
0
0
0
0
0
0
0
0
113
252
252
145
0
0
0
0
0
0
0
0
0
0
86
253
253
190
0
0
0
0
0
0
0
0
0
63
255
253
228
47
0
0
0
0
0
0
0
0
0
0
210
252
252
112
0
0
0
0
0
0
0
0
26
240
253
223
52
0
0
0
0
0
0
0
0
0
0
89
246
252
230
25
0
0
0
0
0
0
0
45
156
252
228
52
0
0
0
0
0
0
0
0
0
0
0
113
252
252
223
0
0
0
0
0
0
0
10
203
252
252
126
0
0
0
0
0
0
0
0
0
0
0
0
113
252
252
223
0
0
0
0
0
0
63
178
252
252
173
0
0
0
0
0
0
0
0
0
0
0
0
0
114
253
253
225
0
0
0
0
13
113
255
253
253
162
0
0
0
0
0
0
0
0
0
0
0
0
0
0
75
243
252
233
85
48
76
85
181
252
253
223
136
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
225
252
252
252
229
246
252
252
252
228
52
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
122
246
252
252
253
252
252
249
145
47
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
88
205
252
253
252
141
99
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
