0
0
0
0
1
1
1
1
1
2
3
4
5
5
5
5
6
6
6
6
7
8
8
10
13
13
13
13
16
18
18
20
22
25
26
27
27
27
27
27
27
28
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
31
32
33
34
35
35
35
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
37
38
39
40
41
42
42
43
44
45
45
46
47
47
48
48
49
49
49
49
49
49
49
49
49
49
49
49
49
50
50
50
50
54
56
58
58
58
61
63
63
63
65
66
69
74
78
81
81
81
81
84
89
92
97
100
100
102
103
104
104
106
107
107
108
110
116
122
128
130
131
131
131
131
131
131
131
131
132
132
132
132
132
132
132
132
132
132
132
132
132
133
134
134
134
134
134
134
134
134
134
134
134
134
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
136
137
137
138
139
139
139
140
141
141
141
141
141
141
142
142
143
144
145
146
146
147
148
149
149
150
151
151
151
151
152
152
152
153
154
154
155
156
157
157
158
159
159
159
159
159
159
159
159
163
167
169
170
175
180
183
185
187
192
195
198
202
205
207
207
208
209
210
211
212
213
214
215
216
217
218
219
220
220
221
222
223
223
223
223
224
224
224
224
224
225
226
227
228
228
228
228
229
229
229
229
230
231
231
235
238
238
238
238
241
243
243
245
246
249
251
251
251
251
251
252
252
253
254
254
254
254
254
255
255
255
255
255
255
255
256
257
257
258
258
258
258
258
259
260
260
261
261
261
261
262
262
263
264
265
265
266
267
268
269
270
270
271
271
271
271
272
273
274
274
274
274
274
274
275
276
276
276
276
276
276
276
276
276
276
276
276
276
276
276
276
277
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
294
294
294
295
296
296
296
296
296
297
297
297
298
299
303
307
310
312
314
314
315
318
320
320
320
323
325
330
333
337
340
343
346
350
355
360
363
368
371
371
373
374
375
375
377
378
378
380
381
386
398
404
405
406
406
406
406
407
408
408
408
409
410
411
412
413
414
415
416
417
417
417
417
417
418
419
419
419
419
419
419
419
419
419
419
419
419
420
420
421
421
421
421
422
422
422
422
422
422
422
422
422
422
422
422
422
423
423
424
425
425
426
427
427
427
428
429
429
429
430
430
431
432
433
434
435
436
437
437
438
439
440
440
441
442
442
443
444
445
446
447
448
449
449
450
451
452
452
453
454
454
454
454
455
455
455
456
460
464
467
470
475
480
483
485
487
492
495
498
503
506
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
