94
94
94
95
95
95
95
96
96
96
97
99
99
99
99
100
100
101
101
102
102
104
104
104
104
105
106
107
108
110
111
111
111
111
111
111
111
112
112
113
114
117
118
119
119
120
122
122
123
123
123
123
123
123
125
125
133
134
134
135
135
135
136
137
137
138
138
141
141
141
142
143
144
145
147
148
149
151
154
154
154
156
156
160
160
161
163
164
163
163
163
166
166
168
168
169
169
169
169
169
163
163
163
163
163
164
163
163
163
164
164
164
164
164
164
164
164
164
164
165
166
169
170
170
171
171
171
169
171
173
172
170
168
167
165
165
165
162
162
162
162
163
163
163
164
168
169
163
161
161
161
161
162
163
164
165
165
164
164
164
164
164
162
163
164
167
168
168
168
170
170
173
174
175
176
176
175
174
173
172
171
171
171
172
174
173
172
171
165
159
159
159
161
163
163
164
164
165
166
166
166
167
167
167
167
168
170
175
175
175
174
174
177
178
178
178
178
178
178
179
177
176
175
162
160
158
157
155
154
153
152
151
153
153
154
154
154
154
154
154
154
154
156
157
159
160
160
161
161
165
166
166
167
167
167
168
168
168
168
168
169
169
169
169
170
170
170
171
172
174
174
174
175
175
177
179
181
182
187
194
201
205
208
214
220
227
234
238
246
249
249
247
245
243
240
239
241
244
247
251
256
256
256
256
256
256
256
256
256
256
256
256
257
263
264
265
265
266
269
270
270
271
272
275
276
276
276
282
283
283
283
284
284
285
287
289
289
290
290
291
295
295
296
296
296
297
302
303
304
305
315
316
316
317
321
321
322
322
322
322
329
330
331
332
333
335
338
341
343
355
357
358
365
368
377
374
372
369
363
359
361
363
364
365
367
367
368
369
371
372
372
372
371
370
366
365
364
374
376
378
380
384
385
386
358
357
366
369
373
379
397
403
410
409
407
406
404
397
398
399
399
400
399
398
397
397
396
395
385
380
367
356
359
363
365
369
371
373
375
377
378
379
380
382
382
382
382
382
383
384
384
384
384
384
386
388
405
408
408
409
410
414
415
415
416
417
420
420
420
418
418
417
417
416
415
411
412
418
420
421
422
423
423
424
425
429
430
432
433
437
440
447
451
454
463
465
467
469
468
467
466
462
461
460
458
461
463
465
490
495
503
503
502
501
500
494
494
495
496
498
503
504
505
506
511
511
513
513
514
515
510
508
504
501
500
489
487
486
477
467
466
470
473
493
495
495
495
495
496
496
497
497
495
487
482
481
479
480
480
480
480
480
481
481
482
482
483
484
485
487
487
490
492
492
492
492
492
492
491
491
491
491
491
491
491
488
487
485
484
482
484
488
493
510
514
520
527
536
534
533
532
528
521
519
516
516
507
504
502
492
490
488
489
489
490
491
493
493
494
495
497
501
508
511
513
531
533
533
533
534
534
534
534
534
534
534
534
534
534
529
528
528
527
525
525
525
524
524
524
524
525
525
525
525
525
525
525
525
525
525
525
525
525
525
527
532
534
537
545
545
549
551
556
556
556
557
557
558
559
560
560
560
563
567
568
573
574
574
575
576
580
584
592
594
595
594
593
590
589
587
586
585
581
577
575
574
577
579
584
585
589
590
590
590
590
590
590
590
590
588
588
587
585
584
584
584
584
584
584
584
584
584
583
582
583
584
586
587
589
589
590
590
595
596
597
598
599
600
601
604
605
607
609
610
613
616
616
616
617
618
619
620
620
618
618
618
619
620
623
631
632
632
629
628
627
628
631
639
641
642
645
652
653
652
651
647
645
643
641
640
640
639
639
637
637
638
639
639
639
637
636
626
623
620
617
617
620
622
623
624
628
625
622
617
615
614
612
607
607
607
607
606
606
606
606
605
605
605
604
604
604
604
606
606
607
607
608
609
610
611
612
612
613
611
609
607
604
600
598
597
597
597
598
598
598
599
599
599
599
599
601
603
605
606
609
610
612
613
615
616
617
619
621
622
623
625
626
627
628
630
632
635
641
642
643
645
645
645
646
646
646
646
646
646
646
645
642
641
641
639
639
639
639
639
640
641
643
644
645
646
648
649
649
649
649
649
652
653
656
656
657
664
666
667
669
673
689
690
691
692
693
694
701
701
701
701
701
701
701
701
702
702
702
702
699
697
694
696
696
698
699
700
700
701
696
694
693
692
691
689
688
683
683
682
682
682
682
682
682
683
683
684
685
685
684
678
674
669
663
663
663
664
666
667
667
668
665
662
661
659
658
647
647
635
634
634
634
632
630
628
628
627
619
620
624
627
632
634
635
635
636
638
638
634
628
623
613
602
601
600
596
596
595
585
583
582
579
578
578
578
578
578
578
578
579
579
579
580
580
580
580
580
580
575
560
557
558
559
561
562
564
565
567
568
569
570
572
573
573
574
571
565
562
560
560
559
559
558
554
552
551
550
550
549
549
550
551
553
554
554
556
560
560
560
561
562
563
564
566
566
569
570
572
573
575
576
577
581
587
601
604
611
613
616
618
612
611
610
609
605
604
603
600
601
601
604
605
606
608
614
615
615
616
616
617
617
618
619
623
627
628
630
631
635
648
648
649
649
649
650
651
651
652
645
643
642
642
642
642
642
642
642
643
654
656
660
660
659
666
678
678
678
680
680
677
677
677
676
676
676
676
676
676
676
676
676
674
672
671
670
669
666
666
680
682
683
685
687
690
689
688
687
686
685
682
682
682
683
683
683
694
696
699
708
711
712
707
703
694
689
685
684
684
684
682
682
682
681
679
677
674
671
671
671
672
673
673
673
674
674
675
675
675
675
672
672
673
673
674
675
684
685
691
692
692
694
695
695
697
698
699
700
700
698
698
698
698
698
699
699
700
700
700
700
701
701
701
701
701
701
701
701
701
701
700
700
699
699
699
700
700
700
701
701
702
702
702
696
693
692
689
688
688
687
688
690
690
690
690
690
690
690
690
689
689
688
687
687
685
684
684
683
683
682
680
680
681
681
681
682
684
686
688
689
690
690
689
687
682
680
678
675
675
675
675
676
674
674
674
674
674
674
673
672
672
671
670
669
668
667
667
664
661
661
661
659
658
657
656
652
651
650
647
645
644
644
644
644
643
643
643
642
642
642
641
641
642
644
643
641
639
638
635
629
629
629
629
629
629
629
629
630
632
632
631
630
629
628
631
632
633
634
635
639
640
640
640
640
640
639
639
639
640
640
649
652
654
656
656
656
656
656
656
656
656
656
656
656
656
656
656
656
655
657
659
660
662
663
665
668
669
669
668
667
667
666
665
664
664
663
662
661
661
661
661
668
674
676
677
671
669
663
663
663
664
664
665
665
664
660
661
662
662
663
664
665
666
667
667
669
671
674
676
677
685
686
687
688
689
689
694
695
696
696
697
698
700
700
701
701
702
704
707
709
716
716
716
716
716
716
716
716
719
729
730
728
726
721
720
720
719
719
718
717
717
714
713
710
705
704
703
703
702
701
700
700
699
699
699
699
698
698
696
696
696
696
697
697
696
692
690
690
691
698
700
700
700
699
699
699
699
699
699
699
699
699
700
700
691
687
684
682
679
677
677
677
677
677
677
677
676
672
672
674
675
675
675
675
675
674
673
673
677
679
683
689
690
690
691
691
695
699
704
710
712
713
715
718
723
726
727
728
740
741
744
748
749
749
749
751
751
753
753
756
761
765
768
770
774
777
780
781
781
780
782
786
789
793
797
800
803
806
812
821
823
825
830
836
838
841
842
844
846
860
861
863
863
863
864
865
866
866
867
878
879
879
880
889
889
891
893
897
898
898
899
909
911
912
913
921
922
924
926
929
930
930
931
934
937
939
941
942
946
947
949
951
952
958
961
962
963
958
955
954
956
971
970
967
966
966
965
965
962
962
962
963
963
964
964
965
965
965
966
966
967
967
967
967
966
964
964
965
966
966
966
964
962
956
955
954
953
949
949
947
946
946
945
944
943
943
942
942
941
940
939
938
938
937
937
936
936
935
933
932
928
926
916
915
914
913
911
911
910
907
906
906
903
903
903
902
902
902
899
898
897
897
893
893
892
892
890
890
889
889
888
887
886
880
879
871
865
863
862
861
858
858
857
857
854
853
853
852
846
844
843
841
841
841
840
835
834
832
831
830
830
817
816
814
813
814
814
815
815
816
812
811
810
808
807
804
803
802
796
795
793
786
785
785
785
784
784
784
783
783
782
781
781
780
779
779
781
783
786
788
790
795
797
800
798
798
796
795
794
794
796
796
796
797
798
798
799
799
800
801
802
802
804
804
806
810
812
813
813
813
812
811
810
809
804
801
793
793
793
793
793
793
793
793
793
793
793
792
792
790
790
788
787
786
787
787
787
786
785
785
783
783
782
781
781
781
781
781
781
781
781
782
782
784
786
787
788
789
790
791
792
795
796
801
803
806
809
811
815
817
821
825
835
839
840
842
841
841
840
839
838
836
835
835
835
837
838
839
839
841
843
844
846
849
852
853
853
855
858
859
859
860
863
863
859
858
859
862
866
866
868
869
870
873
875
875
877
876
876
876
875
874
874
872
872
871
868
868
868
869
870
871
873
875
876
879
884
888
889
890
892
893
895
896
897
899
899
899
898
897
897
898
898
899
899
900
901
902
905
906
907
908
909
904
903
902
901
900
897
884
876
872
873
863
858
854
851
851
853
855
857
860
862
865
865
864
864
863
861
834
822
822
822
822
821
821
820
820
820
821
821
821
821
821
820
818
817
816
815
814
811
805
804
803
802
801
791
783
775
773
771
771
771
772
772
773
773
773
773
771
771
770
769
767
765
762
759
754
751
746
745
745
745
745
746
746
746
745
745
744
743
743
743
742
741
741
740
739
739
738
738
737
737
737
736
736
736
736
732
731
731
730
733
734
731
730
728
727
726
724
714
711
708
703
703
701
700
702
708
712
716
718
721
722
722
722
722
722
722
723
726
727
727
732
732
733
734
736
737
738
740
744
749
749
749
749
749
749
749
749
749
749
749
748
747
747
746
746
746
747
748
749
750
750
751
753
755
756
758
759
759
759
759
759
759
761
763
760
754
752
747
742
740
740
742
746
746
746
746
746
746
746
746
746
746
746
746
746
746
744
743
742
741
740
739
738
737
736
736
735
734
733
732
731
730
729
728
727
726
726
725
725
724
724
724
727
728
729
730
731
732
731
731
730
730
729
728
723
702
700
698
695
694
695
695
696
698
698
697
695
694
693
691
691
684
670
667
663
663
662
662
661
660
659
659
660
660
660
660
660
659
658
652
651
646
646
648
649
650
655
656
658
659
661
669
672
675
686
684
680
677
678
694
696
697
697
696
694
691
692
692
694
694
694
695
696
697
697
697
697
697
697
697
697
693
690
688
686
686
686
686
686
687
689
691
692
693
695
696
697
697
698
699
704
704
701
697
694
693
699
704
717
718
719
720
721
721
728
729
730
729
729
729
728
727
727
727
730
737
740
743
749
757
761
761
762
762
763
764
767
771
774
775
779
780
781
787
787
788
787
784
783
780
777
776
776
775
773
770
778
781
781
779
778
777
777
777
778
779
780
782
786
787
789
789
788
787
786
785
785
786
787
788
789
794
796
798
801
802
803
804
803
803
802
800
801
803
805
807
811
812
812
814
815
816
818
819
819
820
821
822
824
834
837
839
842
847
849
851
854
855
856
862
864
864
866
866
865
863
862
862
861
870
871
873
875
878
882
882
882
882
882
881
881
881
881
881
884
885
888
890
890
892
894
895
896
896
897
897
898
901
903
904
907
909
910
913
914
921
922
926
928
929
931
932
934
935
936
942
942
942
942
942
942
942
942
942
942
942
943
943
945
945
947
947
948
948
948
949
949
949
949
949
949
950
950
952
955
956
959
958
954
951
949
948
950
953
958
961
965
967
971
973
976
979
980
981
990
991
997
998
999
1003
1004
1004
1005
1007
1007
1007
1008
1008
1009
1013
1014
1015
1016
1016
1016
1026
1030
1033
1034
1037
1038
1040
1041
1042
1043
1044
1043
1042
1042
1041
1046
1047
1052
1053
1054
1055
1055
1056
1058
1062
1065
1068
1071
1075
1091
1094
1097
1118
1124
1129
1132
1135
1135
1135
1135
1135
1131
1131
1129
1128
1127
1127
1129
1132
1140
1143
1146
1149
1151
1160
1162
1174
1149
1144
1143
1148
1164
1164
1161
1158
1156
1156
1155
1147
1144
1146
1147
1149
1149
1149
1149
1148
1148
1147
1146
1146
1138
1132
1121
1111
1115
1119
1130
1139
1141
1142
1141
1140
1135
1130
1130
1130
1129
1128
1127
1123
1122
1122
1127
1131
1137
1138
1138
1138
1138
1136
1136
1135
1137
1139
1139
1139
1139
1141
1141
1143
1143
1143
1150
1154
1158
1161
1162
1162
1162
1163
1164
1161
1160
1159
1152
1147
1145
1143
1142
1139
1136
1135
1134
1132
1128
1127
1126
1125
1124
1123
1122
1121
1115
1112
1110
1108
1102
1102
1101
1101
1099
1096
1095
1094
1093
1092
1090
1089
1089
1088
1086
1085
1084
1083
1083
1083
1080
1080
1079
1079
1078
1078
1077
1076
1076
1075
1074
1073
1071
1068
1067
1066
1061
1058
1054
1052
1050
1048
1047
1047
1046
1045
1043
1042
1039
1039
1038
1026
1023
1020
1013
1007
1002
1000
997
992
992
992
991
991
991
990
987
986
984
980
974
969
960
960
960
960
959
959
959
955
949
943
939
940
942
943
944
945
946
946
946
945
945
944
944
944
946
956
957
959
963
961
957
955
953
952
951
949
949
946
943
941
934
937
939
939
942
943
923
906
919
923
925
927
932
935
944
942
940
939
935
934
930
926
920
918
915
915
915
915
915
914
914
914
913
912
911
908
905
904
902
902
905
906
907
910
908
901
891
889
882
880
874
872
868
868
866
865
864
864
864
863
863
863
863
863
863
862
860
857
848
845
839
835
827
822
823
829
830
830
832
833
842
844
846
850
852
852
852
850
842
837
838
839
839
841
842
845
845
845
844
843
843
837
831
829
828
825
824
824
821
820
819
818
808
807
804
804
803
801
801
801
795
794
793
793
792
791
791
789
787
786
780
774
773
771
770
768
767
766
764
763
763
762
761
760
760
746
745
744
743
740
739
736
735
734
733
732
731
730
730
729
729
728
727
727
725
724
723
722
721
719
718
717
716
715
710
707
705
705
705
705
705
707
705
705
704
703
702
701
698
697
697
696
695
694
690
690
689
689
684
684
684
685
685
686
686
686
687
688
689
689
689
689
690
690
690
691
691
692
692
692
692
693
694
694
689
687
686
685
684
695
698
699
699
700
701
701
701
705
706
706
707
708
709
709
710
710
710
708
706
698
696
695
694
693
693
692
691
690
690
689
688
686
685
683
683
682
680
675
673
672
670
666
662
661
660
659
658
658
657
656
656
657
658
659
660
661
662
666
667
668
668
667
666
666
665
659
653
649
649
649
648
647
645
641
640
638
637
636
632
631
630
628
626
625
625
623
622
622
621
621
621
622
622
622
622
619
610
606
600
598
593
593
592
591
590
585
584
583
580
577
576
575
572
571
570
569
567
565
566
567
579
579
579
579
579
580
580
581
581
585
599
600
602
602
603
604
605
605
605
609
611
614
615
618
623
623
627
627
629
631
632
633
636
637
640
642
643
645
647
651
651
651
651
651
650
650
650
650
650
648
648
646
646
647
647
648
648
644
642
640
641
642
642
643
644
645
645
645
646
646
646
645
644
644
644
645
646
646
647
647
647
647
647
647
646
645
636
632
632
629
629
629
629
627
626
623
623
622
622
622
622
621
620
620
620
620
620
620
619
619
616
615
614
614
613
613
606
604
602
601
600
594
593
593
593
594
594
595
595
595
592
583
577
575
571
569
567
564
562
560
550
549
548
547
545
542
541
540
540
538
531
529
525
523
515
513
511
509
505
504
502
496
488
486
485
483
483
482
479
478
475
474
473
473
472
470
469
468
466
466
465
463
463
463
472
474
475
475
479
480
482
482
483
485
486
487
491
492
493
495
499
500
500
500
499
499
498
498
499
523
523
523
523
525
527
528
530
532
535
537
538
541
545
551
557
559
560
561
567
570
572
572
573
575
576
576
577
578
579
580
582
584
585
590
591
591
591
591
591
591
591
591
598
600
602
603
603
603
602
602
601
600
600
599
599
598
598
600
602
603
604
605
607
607
607
607
606
605
605
605
605
605
605
605
605
605
605
605
605
605
605
605
603
603
603
603
604
604
604
605
605
605
605
604
604
604
604
607
621
619
616
615
614
611
610
610
611
611
611
613
614
615
616
622
623
624
624
625
627
628
628
629
629
631
631
631
631
631
631
632
632
633
633
634
634
635
634
632
631
629
627
626
624
626
626
627
632
633
634
637
638
640
639
637
636
635
629
628
627
625
625
625
627
628
631
632
631
628
626
621
620
622
624
625
627
628
629
629
628
628
628
628
628
627
627
626
625
625
623
621
617
614
611
613
614
614
615
616
608
604
603
601
599
597
598
601
612
613
615
619
621
623
627
634
634
634
635
635
637
638
638
638
638
639
640
641
641
645
648
649
652
653
658
662
665
666
667
667
667
668
668
668
669
673
674
674
675
676
681
685
692
694
697
701
703
704
707
708
708
710
712
712
713
713
714
715
714
711
709
708
707
707
707
707
707
706
706
705
704
704
703
700
698
695
693
692
692
689
689
689
690
690
692
692
694
694
693
692
691
691
689
688
687
684
683
680
678
677
676
675
674
672
671
668
666
665
662
661
660
656
643
640
637
632
630
628
626
622
620
614
613
612
611
610
610
609
607
606
605
605
603
603
598
596
588
585
584
583
582
577
573
570
567
565
558
553
552
552
551
549
548
548
547
547
547
547
547
547
548
556
557
558
558
559
561
562
568
570
573
577
577
577
576
578
579
580
581
582
583
584
585
586
587
589
589
590
591
591
593
594
594
594
593
592
590
585
579
577
574
572
565
564
562
561
559
559
559
561
561
561
562
562
562
562
563
563
564
564
564
565
566
566
570
571
571
571
571
570
568
568
567
568
569
569
570
572
573
574
575
575
575
576
579
582
587
590
597
605
604
603
601
598
596
594
591
589
583
582
582
581
579
578
578
579
579
579
579
579
579
579
565
560
554
553
553
552
550
548
543
536
532
528
522
518
511
507
506
504
502
501
501
499
498
494
493
492
489
486
486
484
482
480
478
475
472
469
467
463
462
460
460
458
456
454
451
449
447
437
431
428
423
421
417
414
412
409
407
405
403
400
397
396
394
393
391
389
388
387
384
381
376
372
371
369
369
369
369
365
363
362
358
356
353
350
348
346
344
343
342
341
341
338
338
337
337
337
337
337
350
351
351
351
352
352
353
353
354
356
353
351
350
350
349
349
348
347
346
345
343
343
342
342
342
344
345
346
346
346
344
345
345
346
350
352
354
357
358
361
361
360
360
360
360
361
361
361
361
362
364
366
369
367
364
369
372
373
372
335
322
318
313
313
314
315
315
316
316
315
314
314
314
319
326
329
333
336
337
338
338
333
331
310
305
304
304
304
304
305
305
305
306
307
304
301
292
293
294
298
298
299
299
300
300
300
301
302
302
302
304
304
307
307
307
307
308
308
309
309
309
308
305
304
303
303
291
286
284
281
288
298
288
286
282
278
275
260
257
257
256
255
249
246
241
240
238
238
238
238
239
238
237
235
234
234
233
233
232
231
230
229
228
226
224
223
221
220
220
228
228
228
228
225
221
220
220
220
220
219
218
215
212
206
198
197
197
197
192
193
193
193
193
193
193
193
192
191
191
191
181
175
175
174
173
173
173
173
172
172
172
171
170
170
170
164
162
160
158
158
156
156
156
156
156
155
155
155
155
155
153
153
152
152
152
150
147
146
146
145
144
144
142
142
140
139
133
133
133
132
131
129
129
127
127
127
125
124
123
123
123
123
118
118
118
116
114
112
111
111
110
109
109
109
109
106
105
104
100
100
97
97
97
93
93
92