0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
71
3
0
0
0
0
0
0
0
0
4
209
157
0
0
0
0
0
0
0
0
0
0
0
0
0
0
61
253
126
4
0
0
0
0
0
0
6
148
253
156
0
0
0
0
0
0
0
0
0
0
0
0
0
0
61
253
253
36
0
0
0
0
0
0
61
253
253
139
0
0
0
0
0
0
0
0
0
0
0
0
0
0
61
253
237
29
0
0
0
0
0
0
84
253
237
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
90
253
139
0
0
0
0
0
0
0
125
253
168
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
202
253
48
0
0
0
0
0
0
0
182
253
76
0
0
0
0
0
0
0
0
0
0
0
0
0
0
49
253
253
48
0
0
0
0
0
0
0
182
253
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
153
253
253
48
0
0
0
0
0
0
42
243
253
48
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
253
187
5
0
0
0
0
0
0
101
253
253
48
0
0
0
0
0
0
0
0
0
0
0
0
0
18
210
253
65
0
0
0
0
0
0
0
170
253
253
48
0
0
0
0
0
0
0
0
0
0
0
0
13
209
255
254
162
133
133
24
71
134
133
117
174
254
254
48
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
253
253
253
253
253
253
254
253
250
245
253
211
21
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
253
253
253
253
253
236
218
205
83
170
253
180
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
213
84
84
84
84
44
0
0
7
186
253
157
0
0
0
0
0
0
0
0
0
0
0
0
0
25
253
253
193
0
0
0
0
0
0
0
28
233
253
60
0
0
0
0
0
0
0
0
0
0
0
0
0
6
135
180
80
0
0
0
0
0
0
0
0
170
253
118
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
253
101
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
253
180
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
169
253
180
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
89
190
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
