0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
24
133
214
254
254
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
94
253
253
253
236
229
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
198
254
250
217
136
28
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
66
206
253
252
128
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
50
192
253
253
127
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
220
253
253
68
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
191
253
221
117
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
253
253
111
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
97
247
253
176
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
210
253
253
53
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
254
252
116
0
0
0
0
0
0
0
0
3
13
3
0
0
0
0
0
0
0
0
0
0
0
0
0
157
253
193
0
0
0
0
0
0
3
100
145
171
253
126
15
0
0
0
0
0
0
0
0
0
0
0
16
217
253
118
0
0
0
0
35
101
167
253
253
253
253
253
170
4
0
0
0
0
0
0
0
0
0
0
25
253
253
72
0
0
19
101
250
254
253
253
198
84
132
253
253
24
0
0
0
0
0
0
0
0
0
0
25
253
253
72
0
21
134
253
253
217
72
72
24
15
174
253
230
18
0
0
0
0
0
0
0
0
0
0
25
253
253
164
0
177
253
253
184
29
0
0
49
174
253
253
156
0
0
0
0
0
0
0
0
0
0
0
17
221
253
213
120
244
253
217
8
0
9
86
198
253
253
184
30
0
0
0
0
0
0
0
0
0
0
0
0
54
253
253
253
253
253
186
98
161
221
253
253
230
156
47
0
0
0
0
0
0
0
0
0
0
0
0
0
4
105
222
253
253
253
253
253
254
253
253
180
110
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
37
167
253
253
253
253
191
121
11
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
