0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
105
192
130
165
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
98
213
252
252
252
128
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
164
242
252
252
237
123
36
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
164
252
252
237
132
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
242
252
141
25
0
0
0
0
0
0
0
0
0
0
0
124
96
0
0
0
0
0
0
0
0
0
0
78
252
252
29
0
0
0
0
0
0
0
0
0
9
30
110
248
189
0
0
0
0
0
0
0
0
0
0
208
252
252
29
0
0
0
0
0
0
0
0
0
153
252
252
252
59
0
0
0
0
0
0
0
0
0
0
68
252
252
29
0
0
0
0
0
0
0
6
160
250
241
162
22
4
0
0
0
0
0
0
0
0
0
0
50
236
252
156
13
0
0
0
0
0
38
145
252
238
95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
164
252
252
161
0
0
0
0
62
234
252
252
177
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
253
253
253
253
113
105
192
255
228
149
149
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
44
228
216
252
252
252
252
253
69
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
83
69
252
252
252
252
253
53
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
145
252
252
252
252
252
253
220
42
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
58
223
248
243
177
37
29
160
253
252
220
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
61
226
252
243
108
0
0
0
44
253
252
237
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
208
252
252
99
16
63
0
24
134
253
252
237
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
208
252
252
240
240
244
238
240
252
253
230
65
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
209
252
252
252
252
252
252
252
234
70
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
103
147
234
182
252
163
163
61
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
