0
0
0
0
0
1
1
1
1
1
2
2
3
4
5
6
7
7
7
8
9
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
23
25
25
25
25
25
25
25
25
25
26
29
33
36
41
41
46
47
57
71
99
99
99
99
99
99
99
100
100
101
101
101
101
101
101
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
104
105
105
106
106
107
107
107
107
107
107
107
108
109
110
111
112
112
112
112
112
112
112
112
112
112
112
113
114
115
116
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
118
118
118
118
119
119
119
119
120
120
121
121
121
121
121
122
124
126
126
129
129
131
135
135
135
137
137
141
145
145
145
145
145
145
148
153
153
153
153
153
153
163
170
185
200
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
211
212
212
212
212
212
212
213
214
214
214
214
214
214
214
214
214
214
214
214
214
214
215
215
215
215
215
215
215
219
223
228
228
232
236
237
238
239
239
239
239
239
240
240
240
240
240
241
241
242
243
244
245
246
246
246
247
248
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
262
266
266
266
268
270
273
278
283
288
293
298
303
308
313
319
333
346
361
376
409
409
409
409
409
409
409
410
410
411
411
411
411
411
411
412
412
412
413
413
413
413
413
413
413
413
413
413
413
413
414
414
414
414
414
414
414
415
416
417
418
419
420
421
422
423
423
424
425
426
427
427
428
429
430
431
432
433
434
435
436
437
437
438
438
439
440
441
442
443
444
445
446
447
448
449
449
450
450
451
452
452
452
452
452
452
453
453
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
473
473
477
477
480
484
487
490
495
500
505
510
514
518
523
528
533
538
538
538
538
538
538
543
548
548
548
548
551
554
569
584
599
614
629
629
629
629
629
629
629
630
631
631
631
631
631
632
633
633
633
633
633
633
633
634
635
636
636
636
636
636
637
638
639
639
639
639
640
641
641
641
641
641
641
641
642
642
643
643
643
643
644
645
645
649
654
659
659
664
669
670
671
672
