0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
200
255
255
255
254
230
130
40
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
248
253
253
253
253
253
253
253
222
40
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
132
246
253
253
253
253
253
253
253
253
58
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
62
105
183
245
253
253
253
253
253
172
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
147
222
222
230
253
253
222
26
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
63
253
253
253
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
63
253
253
253
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
63
253
253
253
43
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
63
253
253
253
70
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
186
186
186
186
186
186
203
253
253
253
230
186
186
186
44
0
0
0
0
0
0
0
0
0
0
0
0
49
253
253
253
253
253
253
253
253
253
253
253
253
253
253
141
0
0
0
0
0
0
0
0
0
0
0
0
5
171
253
253
253
253
253
253
253
253
253
253
253
253
222
40
0
0
0
0
0
0
0
0
0
0
0
0
0
29
49
179
253
214
253
253
253
253
148
49
49
49
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
107
85
22
89
253
253
253
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
162
253
253
253
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
180
253
253
253
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
46
246
253
253
253
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
28
221
253
253
253
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
180
253
253
125
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
120
162
35
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
