0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
47
109
94
0
0
0
0
0
0
94
129
170
110
15
0
0
0
0
0
0
0
0
0
0
0
0
0
125
232
252
215
0
0
0
0
0
94
247
252
252
253
159
0
0
0
0
0
0
0
0
0
0
0
0
0
144
252
252
236
62
0
0
0
0
94
247
252
252
253
231
52
0
0
0
0
0
0
0
0
0
0
0
0
144
252
252
215
0
0
0
0
0
0
217
252
252
253
210
31
0
0
0
0
0
0
0
0
0
0
0
0
144
252
252
215
0
0
0
0
0
0
154
252
252
253
179
0
0
0
0
0
0
0
0
0
0
0
0
0
144
252
252
215
0
0
0
0
0
0
197
252
252
253
55
0
0
0
0
0
0
0
0
0
0
0
0
6
160
252
252
215
0
0
0
0
0
99
242
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
0
37
252
252
252
215
0
0
0
0
0
253
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
0
99
253
253
253
232
47
0
0
99
253
255
253
253
253
255
35
0
0
0
0
0
0
0
0
0
0
0
63
242
252
252
252
252
232
218
217
242
252
253
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
73
252
252
252
252
252
252
253
252
252
252
253
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
73
252
252
252
252
252
252
253
252
252
252
253
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
73
253
253
253
253
253
253
255
253
253
253
255
253
253
253
255
35
0
0
0
0
0
0
0
0
0
0
0
52
190
252
252
252
252
252
180
179
231
252
253
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
0
11
154
215
215
215
132
0
0
51
71
253
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
253
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
253
253
253
255
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
128
252
252
252
253
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
31
195
241
252
253
56
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
181
252
253
97
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
