0
0
0
0
0
0
0
0
0
0
0
1
2
2
2
2
3
3
3
3
4
4
4
4
4
4
4
4
5
5
5
6
8
11
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
16
16
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
19
20
20
21
22
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
25
25
25
25
27
27
27
28
28
29
31
32
33
36
40
43
43
45
45
45
50
53
58
61
61
62
63
64
64
64
65
65
65
66
69
70
71
79
85
91
92
93
94
94
94
94
94
94
94
94
94
94
94
94
94
94
95
96
96
97
97
97
97
97
97
98
99
100
101
101
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
104
105
105
105
106
107
108
108
108
108
108
108
108
109
109
109
109
109
109
109
109
109
109
109
110
110
110
110
111
111
111
111
111
111
111
111
112
113
113
114
114
114
114
115
116
116
116
117
118
118
118
118
118
118
118
118
118
119
120
121
121
121
121
121
121
124
126
127
127
132
134
137
141
145
146
147
150
153
156
159
159
161
162
162
163
163
163
163
164
165
165
166
166
167
168
169
169
170
171
172
172
172
172
172
172
172
172
172
172
172
173
174
174
174
174
175
175
175
175
176
176
176
179
181
181
182
182
185
187
188
188
189
192
193
193
193
193
193
193
193
193
193
193
193
193
194
194
194
194
194
194
194
195
195
195
195
195
195
196
196
197
197
197
197
197
197
197
197
197
197
197
197
198
198
198
198
198
198
198
199
199
199
200
200
201
201
201
201
201
201
201
201
201
201
201
201
202
202
202
202
202
202
202
202
202
202
202
202
202
202
203
203
204
204
205
205
206
207
208
209
210
211
211
211
211
212
213
213
213
213
213
214
214
214
214
214
214
214
214
215
216
219
221
224
226
228
229
229
230
233
234
238
241
245
248
251
256
261
264
269
272
277
280
280
282
283
284
284
286
287
287
287
287
290
291
292
300
309
314
315
316
317
318
319
319
319
320
321
321
321
321
322
323
323
324
325
326
326
327
327
327
327
327
327
328
329
330
331
331
332
332
332
332
332
332
332
332
332
332
332
333
334
334
334
335
336
337
338
338
339
340
341
341
341
342
342
342
342
343
343
344
345
346
347
348
349
350
351
351
352
353
354
354
355
356
356
357
358
359
360
360
361
362
362
363
364
365
365
366
367
367
367
367
368
369
369
369
369
370
370
370
370
371
372
373
373
373
373
374
374
377
379
380
380
385
388
391
395
399
402
405
410
413
416
419
420
422
423
423
424
424
424
424
425
426
427
428
428
429
430
431
431
432
433
434
