20
20
28
33
35
38
40
42
44
48
50
50
53
57
58
61
65
67
70
85
87
84
79
77
77
76
74
73
73
75
75
77
80
82
83
88
89
90
91
92
92
92
93
93
93
94
96
97
97
98
98
99
100
101
102
104
105
106
106
108
109
111
114
119
120
121
123
123
124
125
127
127
127
132
138
131
133
134
141
142
143
143
144
144
146
146
146
146
146
146
146
146
146
145
145
145
145
146
148
149
149
149
151
151
151
151
151
151
154
153
153
152
151
149
146
145
144
144
144
145
145
148
149
153
154
155
156
157
157
157
157
157
156
156
155
154
153
153
153
154
154
155
155
156
156
155
154
153
151
151
151
151
150
149
149
148
148
148
148
151
152
152
152
152
152
153
154
154
154
154
155
155
157
157
157
157
157
157
157
157
156
155
155
154
154
154
154
154
154
154
154
152
152
152
152
152
152
151
151
151
151
150
150
150
150
148
146
146
146
144
144
142
136
133
133
132
131
130
130
129
125
123
118
110
104
103
119
122
125
131
132
136
137
137
139
139
140
140
141
141
142
142
144
144
144
144
145
145
145
146
148
148
148
149
151
151
151
151
149
147
145
141
142
142
142
143
146
146
146
146
144
144
144
143
140
140
144
149
151
153
152
151
151
147
146
146
145
145
143
141
134
133
132
132
132
132
133
134
136
136
137
138
139
143
144
144
148
150
150
152
156
158
160
162
163
172
187
189
192
198
201
207
210
211
216
221
225
228
230
232
234
242
251
256
258
263
265
267
271
274
274
275
276
280
285
286
288
290
292
295
300
301
302
301
301
299
302
304
306
310
313
314
322
330
332
336
337
339
343
345
346
347
348
349
350
353
357
363
368
368
370
373
375
377
378
380
381
382
385
392
393
397
397
400
402
407
409
412
415
421
426
428
429
431
432
440
443
445
447
449
450
451
454
454
456
457
458
460
462
464
465
468
471
474
477
479
483
487
489
496
497
498
505
508
510
511
513
514
515
516
518
519
522
522
523
524
527
531
532
534
535
539
542
544
546
550
551
552
552
553
555
555
556
557
562
563
564
565
566
567
569
569
570
574
576
580
580
581
583
584
585
587
587
588
590
591
591
593
593
594
594
595
595
598
600
603
612
620
620
621
622
624
625
626
627
628
629
632
633
633
634
635
640
642
648
649
652
653
655
666
668
668
665
664
669
668
668
668
668
668
668
670
675
676
676
676
677
679
681
682
683
683
685
686
686
686
686
686
686
686
685
685
683
673
671
663
662
660
655
654
652
651
651
650
649
648
646
646
645
645
645
645
646
647
637
640
636
633
618
612
611
611
611
611
610
609
609
599
597
582
577
575
573
570
570
570
570
570
568
565
562
548
548
536
524
525
526
526
527
527
528
528
529
529
529
530
530
530
530
530
530
530
530
530
529
529
529
529
528
528
528
529
529
531
533
534
534
534
533
533
534
535
536
536
536
537
537
539
541
541
541
541
542
543
545
546
548
551
551
551
551
551
552
551
550
549
547
547
548
550
550
550
550
550
549
549
549
549
549
563
563
561
560
559
559
559
558
558
558
557
557
553
551
551
550
550
551
553
554
557
564
566
569
573
577
578
579
583
584
585
586
586
591
593
594
594
591
590
589
585
584
583
581
578
576
575
570
568
567
568
570
572
573
574
575
579
581
583
586
586
585
585
584
585
585
586
586
587
587
588
588
589
590
589
588
586
585
583
583
584
585
586
586
587
588
588
588
588
587
587
587
587
585
584
583
582
586
588
591
592
594
596
597
597
598
598
592
586
583
580
576
579
580
581
582
583
592
597
597
596
594
594
595
596
596
597
597
597
597
597
597
596
595
593
593
594
596
599
600
601
601
601
602
602
602
603
611
615
617
619
623
624
625
627
627
627
625
625
624
624
629
634
634
630
629
628
627
627
626
624
622
619
616
613
611
610
609
607
605
605
605
605
605
606
606
606
607
608
609
611
621
614
614
613
612
612
612
611
608
608
607
606
601
598
596
594
592
588
587
588
588
588
588
588
589
589
588
587
586
585
584
583
580
578
576
576
573
572
567
566
565
561
559
555
553
551
547
544
541
539
530
526
524
515
514
513
509
508
508
508
508
508
507
505
504
498
497
495
477
474
472
470
463
463
462
460
457
456
455
454
451
448
445
444
443
442
441
441
440
439
438
437
435
433
430
429
428
423
422
419
416
396
398
398
398
398
398
396
393
390
388
385
396
388
387
382
379
374
373
371
370
367
366
365
364
360
356
353
352
351
349
349
349
347
342
342
341
339
338
338
337
331
328
326
324
319
317
315
309
296
288
283
282
282
281
281
281
281
277
276
273
269
268
266
265
259
257
255
253
253
252
248
245
244
242
238
231
230
229
228
226
226
225
224
223
220
219
216
212
211
210
207
205
201
198
116
109
108
106
105
104
102
92
89
85
81
81
81
81
82
82
82
71
69
65
61
58
57
52
48
48
46
43
41
38
36
33
30
27
21
20