83
83
83
83
85
78
78
78
77
78
80
82
82
82
82
82
82
82
82
82
81
80
80
79
79
79
79
80
79
79
79
79
78
78
77
77
77
76
74
74
73
71
71
70
69
68
68
68
68
68
68
69
69
71
71
72
73
73
73
74
74
74
74
75
76
76
77
78
80
80
81
81
86
81
79
78
77
74
74
73
73
72
69
68
67
66
65
64
63
64
65
66
67
66
66
66
65
65
65
65
64
64
64
64
65
66
66
66
66
66
65
64
64
64
64
64
64
65
65
65
65
65
66
66
66
66
66
66
66
66
66
68
74
76
78
79
79
81
82
85
91
92
95
98
98
99
99
100
101
102
104
105
106
106
107
111
112
112
112
111
108
105
104
102
101
101
101
101
101
101
105
106
107
109
110
110
107
106
104
102
102
108
110
111
112
113
114
116
117
117
117
120
121
122
122
122
122
123
124
126
128
129
127
126
120
120
119
116
115
112
111
110
110
110
109
109
107
106
104
99
98
97
96
96
96
96
96
96
96
96
96
96
96
97
98
99
99
100
101
102
103
105
105
106
108
109
109
110
111
111
111
111
111
112
112
112
114
115
116
116
117
117
118
118
121
121
121
122
123
124
126
129
135
146
149
151
152
153
155
155
155
155
154
154
154
156
158
163
166
167
169
170
171
172
174
175
176
177
179
180
181
180
179
176
175
174
173
173
176
176
176
179
180
182
183
190
190
190
189
187
186
186
185
184
183
183
183
183
183
183
183
183
183
184
184
185
185
186
186
187
188
187
185
186
187
190
190
192
196
197
198
199
200
200
201
201
202
203
203
204
205
206
206
209
211
213
216
220
226
230
232
235
235
235
236
237
237
237
237
244
247
248
250
251
254
256
259
261
267
270
272
277
278
275
275
274
273
272
269
268
268
268
268
268
268
268
268
268
272
274
276
279
282
285
293
295
303
305
308
308
308
307
307
306
305
305
304
304
304
305
305
306
307
307
310
312
315
316
318
319
320
324
326
327
328
329
330
332
335
335
337
341
342
347
348
354
357
357
358
360
363
368
371
372
373
371
370
368
361
360
360
360
360
360
361
361
361
361
361
361
359
358
357
357
356
356
356
356
367
368
370
371
371
371
370
370
369
369
368
367
366
366
367
372
376
379
381
382
381
381
380
379
379
378
379
381
387
389
391
393
397
398
401
402
402
402
402
402
401
401
400
399
398
397
394
392
390
390
390
389
388
388
388
393
396
398
399
400
400
401
401
402
402
401
400
399
396
394
392
391
391
391
391
391
391
391
391
390
388
387
386
384
384
383
379
378
371
367
364
363
362
361
361
359
359
360
361
362
363
364
363
362
362
361
361
360
360
358
356
354
347
342
340
337
335
335
332
329
329
328
328
327
327
329
331
332
333
333
332
332
331
330
330
329
328
328
329
330
333
333
334
335
335
336
336
337
338
338
338
336
335
334
333
332
331
331
329
329
329
329
328
328
328
328
334
334
335
336
336
336
335
335
334
334
336
337
337
339
340
340
333
332
332
331
331
337
338
344
347
346
345
343
341
340
335
334
332
331
328
330
331
339
340
342
346
349
349
347
346
345
342
341
344
348
353
361
375
384
382
381
379
377
371
370
368
371
373
374
378
380
382
383
384
385
385
386
387
387
388
393
395
397
404
408
413
419
421
421
421
421
421
421
421
421
420
420
420
420
420
420
419
419
418
418
418
418
417
417
417
417
417
418
418
418
418
418
420
421
422
425
427
430
433
435
438
439
442
441
441
440
439
440
441
442
443
449
451
452
451
451
451
450
450
449
449
449
450
451
451
452
452
453
453
454
454
454
454
454
454
454
455
456
458
460
461
466
468
469
471
472
471
469
468
467
466
464
460
456
453
452
452
452
449
451
451
452
450
447
445
443
441
436
433
431
427
426
423
422
420
422
424
425
428
431
433
430
428
426
423
416
414
412
410
410
410
412
412
413
413
415
415
415
415
413
408
406
404
404
404
404
404
404
403
403
403
403
403
404
408
409
418
419
420
420
415
413
411
407
405
409
410
410
411
412
415
415
415
415
415
415
414
413
412
408
407
405
402
401
401
403
404
406
407
411
412
414
416
418
419
419
416
414
415
417
418
420
423
427
432
435
444
450
451
452
452
451
451
450
450
449
449
449
449
454
459
461
463
463
463
463
463
463
463
463
463
463
463
464
464
465
465
465
466
466
466
467
467
467
470
472
472
473
473
472
471
470
467
467
468
469
470
472
474
475
475
477
478
480
482
486
488
489
490
491
493
496
505
506
507
509
510
510
510
511
513
514
514
512
510
509
509
509
509
509
510
511
512
513
513
513
512
512
511
511
510
509
508
508
508
508
508
508
508
511
512
524
524
524
527
533
535
543
546
547
570
569
567
566
564
563
563
563
563
563
562
562
561
561
561
561
560
560
560
561
562
564
565
565
563
561
552
552
553
555
556
559
561
567
569
571
572
572
575
576
576
577
578
578
578
580
582
583
584
585
587
588
590
593
595
597
598
600
601
602
603
603
603
603
602
600
599
598
599
600
602
603
604
605
607
608
612
613
614
615
616
616
618
620
622
623
628
631
630
629
628
626
625
630
631
632
635
637
643
650
651
650
649
648
646
642
641
640
643
645
646
647
648
650
651
651
650
649
648
647
646
644
642
640
639
635
633
632
631
630
629
627
627
628
632
635
638
640
643
646
649
652
653
655
656
659
660
662
663
667
668
668
668
675
676
675
672
665
662
660
655
655
656
656
656
657
661
662
662
661
661
661
661
662
663
666
667
668
669
665
662
662
658
658
658
661
662
661
660
659
658
656
655
655
654
654
653
654
654
654
654
655
659
663
666
670
675
677
677
677
677
677
677
678
679
680
682
683
684
689
691
692
695
700
706
706
706
706
705
704
704
704
705
707
708
714
717
717
717
716
716
717
718
719
720
721
722
722
723
725
725
726
727
728
730
730
730
727
727
730
733
735
743
747
750
752
750
750
749
747
747
745
745
747
748
748
749
749
749
749
749
749
749
750
752
752
753
753
753
754
754
754
754
747
745
743
742
739
739
738
740
741
743
745
747
749
750
751
753
754
755
758
758
758
758
755
754
752
751
752
754
755
757
760
763
764
767
762
760
760
761
762
769
769
767
767
768
769
769
770
772
774
774
776
776
776
776
776
776
778
779
780
782
784
786
795
798
799
800
801
800
798
797
790
788
787
786
785
780
777
777
777
777
777
777
777
777
777
775
774
772
771
771
770
769
768
766
764
761
756
748
742
736
736
742
745
755
756
758
762
763
765
774
779
783
797
803
806
807
810
801
799
797
796
796
796
796
796
798
799
805
805
801
800
800
800
799
798
795
794
793
791
787
776
776
776
776
777
779
781
783
786
788
790
797
798
801
802
804
807
810
811
816
819
820
823
824
827
828
830
828
826
823
820
819
820
820
820
821
821
823
824
824
824
823
823
823
821
817
815
814
814
813
811
810
807
801
799
796
796
795
795
804
807
814
820
824
824
824
824
823
823
823
823
823
823
827
827
830
832
832
833
834
834
835
838
840
842
847
850
856
855
854
853
853
852
851
851
850
850
848
848
847
846
844
842
842
842
842
842
842
841
840
842
848
855
858
859
858
858
855
854
850
845
842
841
839
837
837
836
836
835
835
833
832
832
831
831
830
830
831
834
837
838
840
840
833
831
830
828
826
823
821
820
817
813
808
807
800
795
797
797
798
798
798
799
799
799
799
799
797
794
793
793
792
791
790
788
787
786
785
784
783
778
766
765
765
765
765
765
765
765
765
765
764
763
762
762
761
761
761
759
756
755
755
755
755
755
755
755
755
755
755
759
761
763
766
770
772
774
779
780
779
777
777
776
775
774
776
777
778
779
780
781
784
790
792
793
795
798
799
801
801
800
799
797
797
795
793
793
794
799
800
802
803
805
807
809
809
809
809
809
809
808
807
801
798
795
795
796
797
797
800
800
802
803
804
805
806
803
800
798
794
789
785
778
776
777
778
779
780
781
778
777
777
776
776
776
775
774
774
776
778
779
780
781
787
790
792
793
795
796
799
801
802
803
804
804
812
813
813
813
813
816
817
818
826
826
827
827
829
829
831
832
832
833
839
840
841
843
838
837
836
834
832
839
840
842
843
843
844
844
844
844
844
844
842
842
841
841
841
843
843
844
845
846
849
851
853
857
861
864
865
868
868
868
868
868
868
867
864
855
853
850
846
846
846
846
844
844
843
842
842
840
840
840
838
838
841
842
842
844
843
842
839
837
835
834
834
830
829
828
827
827
826
825
825
824
823
821
821
820
819
818
818
818
819
819
819
815
813
810
807
805
797
795
794
790
789
787
784
783
780
779
778
775
773
773
773
773
772
767
766
763
762
758
756
756
757
757
757
757
755
749
747
745
744
743
740
734
733
732
731
730
729
728
727
727
727
727
727
728
728
724
722
721
713
711
707
697
695
693
690
688
689
696
698
699
702
705
706
703
702
701
696
692
687
685
684
682
682
681
680
687
689
694
693
691
689
687
687
687
687
685
678
674
669
667
669
671
673
674
675
676
674
663
661
650
646
644
642
641
645
649
652
654
657
650
648
645
643
640
640
640
640
640
638
632
630
628
628
627
623
623
623
623
622
618
617
615
614
613
613
613
612
612
612
611
610
610
609
609
609
604
603
602
598
597
594
597
597
598
599
599
600
601
601
601
602
602
603
603
604
604
605
605
605
606
607
608
609
609
610
611
611
612
612
613
614
615
616
616
616
617
618
619
620
620
620
620
620
619
619
618
617
617
616
616
616
615
615
614
614
613
613
613
612
612
611
610
610
609
609
609
609
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
608
607
607
606
606
606
605
605
605
604
604
604
603
603
603
602
602
601
601
601
600
600
599
599
599
598
598
598
597
597
596
596
595
594
594
594
593
593
592
592
592
591
591
590
589
589
588
588
588
587
587
586
586
586
586
585
585
584
584
583
583
582
582
582
581
581
581
581
580
580
579
579
578
578
577
577
577
577
577
578
578
579
579
579
579
580
580
581
581
581
581
582
582
583
583
583
583
584
584
585
585
586
586
586
586
586
586
586
586
586
586
586
586
587
587
587
587
587
587
587
587
587
587
587
587
587
587
586
586
586
586
585
585
584
584
584
584
583
583
582
582
582
582
582
581
581
580
580
580
580
580
580
581
582
582
583
584
584
584
585
586
586
587
587
587
588
589
589
590
590
590
591
592
593
593
594
594
594
594
594
594
594
594
594
594
594
594
594
595
595
595
595
595
595
595
595
595
595
595
595
595
596
597
597
598
598
598
599
600
601
601
602
602
602
603
604
604
605
606
607
607
608
609
610
610
611
611
611
612
612
612
613
613
613
613
614
614
614
615
615
615
615
616
616
616
616
616
616
616
616
616
615
615
615
614
614
614
614
614
613
613
613
613
612
612
612
612
611
611
611
611
610
609
608
607
606
606
606
605
604
603
602
601
600
600
599
599
599
598
597
596
595
594
594
593
593
593
593
593
593
592
592
592
592
592
591
591
591
591
591
591
590
590
590
590
590
590
590
589
588
588
588
587
587
586
586
586
585
585
584
584
583
582
582
581
581
580
579
579
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
577
577
577
577
577
577
577
577
577
577
577
577
576
576
576
576
576
576
576
576
576
576
576
576
576
575
575
575
574
573
572
571
570
570
569
568
567
566
566
566
565
564
563
562
562
562
561
560
559
558
558
557
556
555
555
555
554
554
553
552
552
552
551
550
549
548
548
547
547
547
546
545
544
543
543
542
542
542
542
542
542
542
542
541
541
541
541
541
541
541
541
540
540
540
540
540
540
539
539
539
539
538
538
538
537
537
536
536
536
536
535
535
535
534
534
533
533
533
533
532
532
532
531
530
528
527
526
525
523
522
521
520
518
517
516
516
515
513
512
511
510
508
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
506
505
504
504
503
502
501
501
500
500
499
498
497
496
496
495
495
495
494
493
492
491
490
489
489
489
488
487
486
485
484
484
484
483
482
481
480
479
478
478
477
476
475
474
473
472
472
472
473
473
474
474
474
475
475
476
476
477
477
478
478
478
478
479
479
480
480
481
481
482
482
482
483
484
484
485
486
486
486
487
487
488
489
489
490
491
491
492
493
493
494
494
493
492
491
490
488
487
486
485
484
482
481
480
479
478
478
477
476
474
473
472
471
470
469
468
468
468
467
466
466
465
464
464
464
463
462
461
461
460
459
458
458
457
456
455
455
455
454
453
453
452
451
450
450
449
449
449
448
447
446
446
445
444
443
443
442
441
440
440
440
440
440
440
440
440
440
439
439
439
439
439
439
439
439
438
438
438
438
438
438
438
438
438
438
438
438
438
439
439
439
439
439
439
440
440
440
440
440
441
441
441
441
441
441
441
442
442
442
442
442
442
442
443
443
443
443
443
444
444
444
444
444
445
445
445
445
445
445
446
447
447
448
448
449
449
449
450
450
451
452
452
453
453
454
454
455
455
456
456
456
456
457
458
458
458
458
458
458
458
459
459
459
459
459
459
459
459
460
460
460
460
460
460
460
460
461
461
461
461
461
461
461
461
461
461
461
461
461
461
461
461
461
461
461
461
461
462
462
462
462
463
463
463
463
464
464
464
464
465
465
465
465
466
466
466
466
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
467
469
470
472
473
474
476
477
478
478
479
480
482
483
485
485
485
486
488
489
490
492
493
495
496
497
498
498
498
500
501
502
503
505
505
505
506
507
508
510
510
510
512
513
514
515
517
517
517
518
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
519
518
517
517
516
515
515
514
513
513
512
511
511
510
510
509
508
508
507
506
506
506
506
507
507
507
508
509
511
518
525
529
531
531
531
531
531
531
531
531
532
526
520
518
518
518
518
518
518
517
515
513
511
510
510
509
508
508
504
502
501
499
498
496
497
498
498
499
500
502
502
502
501
501
499
501
502
502
504
505
505
506
506
506
509
512
514
516
519
521
522
523
524
526
527
528
529
530
533
535
536
539
541
541
543
545
546
548
552
553
555
555
555
555
556
556
556
557
557
557
557
556
556
555
552
550
548
546
543
544
545
547
548
549
550
551
552
552
552
552
552
552
552
552
555
557
560
563
566
566
565
564
564
565
568
572
574
578
580
581
579
577
576
574
572
571
573
573
574
574
575
576
580
585
586
587
591
592
592
591
591
591
590
590
589
589
589
588
588
587
587
586
586
585
585
585
585
585
585
585
585
585
585
585
585
586
587
587
588
589
593
594
596
596
596
597
597
599
599
599
599
598
598
598
598
597
596
596
595
595
594
594
594
594
594
594
594
594
594
594
594
594
594
594
594
594
594
594
594
594
594
595
595
595
595
595
595
595
594
592
589
591
592
594
598
601
607
611
613
614
618
619
621
626
628
628
626
625
624
623
623
625
625
626
627
627
631
632
635
636
637
638
638
638
638
638
635
630
629
630
630
633
635
636
639
640
641
641
642
644
647
650
653
653
653
653
652
650
647
646
642
640
639
634
629
619
616
614
614
611
610
608
607
606
601
598
596
593
590
592
593
593
594
594
594
595
598
598
597
597
596
596
596
595
593
591
590
586
584
584
584
584
582
581
580
577
577
574
573
572
571
570
566
565
564
552
550
549
545
543
543
543
543
543
543
543
543
543
542
542
542
538
536
535
534
536
537
539
540
541
543
543
542
542
540
539
536
535
531
517
514
514
514
514
515
515
512
506
504
487
484
481
479
475
471
461
457
455
454
453
452
450
447
445
445
445
444
443
442
440
439
439
438
438
437
437
434
432
432
431
431
431
428
421
415
411
409
408
403
401
399
392
389
388
386
384
383
382
382
382
382
382
383
384
386
387
388
389
389
389
388
387
386
386
385
379
376
372
371
369
367
364
364
364
363
362
362
358
353
351
346
344
335
334
332
331
328
326
324
322
321
320
320
319
318
317
317
316
315
314
312
311
307
307
306
306
302
297
291
285
285
285
286
286
286
286
286
286
287
287
287
287
286
286
286
284
283
283
282
282
281
279
278
277
275
275
272
270
270
270
269
268
268
265
264
264
261
259
257
250
249
244
238
236
233
224
218
217
216
214
212
205
201
195
193
184
184
184
183
180
179
178
177
177
177
176
174
173
172
171
169
168
168
163
159
159
155
151
149
144
142
141
141
141
141
141
141
141
141
140
140
140
140
140
137
137
137
135
135
133
131
129
129
128
128
128
127
127
127
126
126
126
126
127
127
128
129
129
130
131
131
132
133
133
134
135
135
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
137
137
137
137
136
136
136
136
141
142
143
143
141
140
140
142
142
142
142
142
142
142
142
142
142