52
51
48
48
48
48
48
48
48
48
48
48
46
46
46
46
46
48
50
52
53
54
54
54
51
49
48
46
46
45
44
43
43
42
41
39
39
40
40
40
40
40
40
40
40
37
37
37
33
32
32
32
32
32
32
32
32
32
32
33
33
33
34
34
34
34
33
33
32
31
31
32
32
33
32
32
32
31
30
30
24
24
25
26
26
27
27
27
30
33
33
33
41
44
47
48
44
40
33
29
29
30
32
34
36
38
41
43
45
50
48
43
39
38
37
36
35
34
38
39
40
40
39
36
36
35
34
31
31
31
31
31
37
39
41
46
47
48
44
42
40
39
39
39
42
50
50
49
48
47
47
47
49
49
50
50
51
52
56
56
59
59
59
60
58
57
53
51
50
49
58
63
63
68
72
77
81
85
87
87
88
89
100
103
104
105
107
111
116
121
126
127
127
128
129
130
140
141
143
147
148
156
168
170
175
175
175
175
175
175
175
175
175
175
174
164
157
157
150
136
133
131
132
137
137
138
139
140
141
143
144
144
145
145
152
153
155
157
159
159
160
161
162
163
164
169
171
176
180
188
190
203
205
207
208
210
215
223
225
228
229
231
233
236
237
255
266
266
267
269
270
272
282
287
288
291
292
293
293
294
294
295
298
301
302
302
306
311
313
314
323
326
327
331
335
336
340
341
344
351
358
363
368
371
372
375
376
377
381
387
392
393
394
397
398
399
401
403
408
410
415
416
417
434
438
439
440
444
451
452
453
454
458
458
459
461
463
468
474
474
475
475
476
477
485
488
488
489
490
494
498
504
505
505
506
506
507
507
508
509
510
511
515
516
517
519
520
520
521
522
527
532
535
543
545
547
550
550
552
554
560
568
569
570
571
575
578
581
584
589
592
596
598
600
601
606
607
607
608
609
610
613
615
618
632
635
639
640
642
644
648
651
653
659
665
672
680
682
688
691
700
702
703
706
706
707
707
713
713
715
716
720
721
732
732
733
734
735
745
747
748
755
774
775
777
778
779
781
781
783
784
785
788
791
801
802
803
803
804
805
806
806
807
808
816
818
819
821
822
824
825
832
842
843
844
849
849
850
853
859
861
871
874
875
886
892
893
898
900
906
907
908
909
909
910
910
913
917
923
925
929
932
941
941
941
941
941
941
942
945
945
947
948
950
956
966
967
969
977
978
979
981
981
980
980
980
980
981
982
992
995
1005
1006
1007
1008
1021
1021
1021
1022
1023
1024
1024
1025
1026
1026
1027
1029
1030
1042
1056
1058
1061
1063
1065
1072
1074
1080
1088
1088
1088
1089
1089
1089
1089
1089
1089
1091
1097
1102
1104
1106
1114
1122
1124
1131
1131
1132
1152
1153
1154
1157
1158
1166
1168
1169
1173
1197
1201
1204
1204
1204
1206
1208
1209
1211
1217
1220
1222
1226
1234
1238
1246
1247
1247
1248
1249
1249
1249
1249
1248
1248
1245
1245
1244
1244
1244
1244
1244
1245
1247
1247
1248
1248
1249
1250
1254
1255
1256
1256
1258
1271
1275
1275
1275
1275
1276
1276
1276
1287
1289
1290
1290
1290
1290
1291
1293
1293
1295
1296
1297
1297
1297
1297
1295
1293
1292
1283
1283
1283
1282
1282
1281
1280
1279
1278
1276
1276
1275
1272
1270
1266
1265
1259
1258
1256
1254
1252
1252
1250
1250
1249
1249
1249
1247
1242
1241
1240
1239
1238
1238
1232
1232
1231
1230
1229
1229
1228
1224
1224
1223
1222
1221
1221
1220
1202
1201
1201
1200
1200
1199
1199
1198
1198
1197
1197
1196
1194
1194
1193
1192
1191
1187
1186
1185
1183
1182
1179
1177
1176
1175
1172
1172
1171
1171
1169
1167
1166
1166
1165
1164
1164
1164
1161
1160
1159
1157
1155
1151
1148
1147
1145
1140
1137
1136
1131
1131
1130
1130
1129
1128
1128
1127
1126
1124
1120
1120
1119
1118
1117
1116
1116
1115
1114
1113
1107
1107
1107
1104
1103
1103
1102
1095
1095
1094
1094
1093
1092
1088
1082
1081
1077
1076
1075
1074
1070
1068
1064
1057
1055
1054
1053
1051
1050
1049
1047
1046
1045
1045
1045
1045
1045
1044
1038
1037
1036
1034
1031
1028
1027
1027
1025
1025
1025
1025
1023
1021
1017
1016
1014
1012
1008
1006
1005
1004
1003
1002
1001
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
999
998
997
997
996
994
993
992
991
991
991
991
991
990
990
990
989
988
988
988
988
987
986
985
985
983
982
982
982
982
981
980
980
979
979
976
975
973
972
972
972
972
971
970
970
968
967
966
965
964
964
960
957
956
955
954
954
953
953
951
951
950
950
950
945
944
944
943
943
942
941
938
935
935
934
934
933
930
929
928
928
927
927
926
923
923
922
922
919
915
909
904
903
902
901
901
900
899
899
899
894
893
890
889
888
885
884
883
883
882
881
879
878
876
876
875
872
872
872
872
872
873
874
873
871
869
868
867
858
849
843
835
832
829
829
829
829
829
830
832
832
833
833
831
830
829
827
824
823
822
822
821
816
813
812
805
804
802
802
802
801
801
801
801
801
801
800
796
795
793
792
792
791
779
778
776
775
774
772
768
757
752
751
750
747
747
746
745
743
742
739
737
735
730
729
727
726
724
724
723
716
706
703
699
699
698
698
693
687
677
675
675
674
670
668
665
663
658
657
656
654
653
649
643
640
639
638
637
635
635
637
637
637
634
633
630
630
628
623
621
619
618
616
612
610
609
607
596
586
579
574
572
567
567
567
567
567
565
559
555
550
534
534
538
540
537
535
534
530
527
515
506
502
500
498
499
499
499
500
500
501
501
502
502
502
498
497
496
495
494
493
488
487
485
481
480
476
475
474
474
474
474
474
474
474
474
474
473
472
472
470
464
460
457
451
450
449
449
449
449
449
448
448
447
447
447
446
443
437
432
430
427
424
424
423
422
419
417
416
415
415
415
415
415
415
415
415
414
413
413
412
412
410
410
407
405
405
404
403
402
402
403
410
410
409
409
409
409
409
409
409
409
409
411
413
413
414
414
415
415
415
415
415
415
415
415
415
413
411
409
409
408
408
407
407
407
407
407
408
408
409
409
409
409
410
410
410
411
411
412
412
412
412
409
408
408
407
407
407
411
412
413
413
413
412
411
411
409
409
408
408
407
406
406
405
404
402
403
408
408
407
406
406
406
407
407
407
409
411
413
414
416
417
418
418
420
420
421
422
423
424
425
426
428
430
432
433
434
434
435
435
437
439
441
449
452
453
455
455
457
457
456
456
454
454
453
453
453
453
453
451
450
450
448
446
445
445
444
443
443
443
443
443
444
443
440
438
436
434
433
430
425
422
422
422
422
422
421
421
420
420
420
417
416
415
415
414
413
412
411
410
410
409
408
406
404
400
400
400
400
400
400
400
400
400
400
400
400
400
399
399
399
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
400
401
401
401
402
403
411
422
423
424
424
425
425
425
425
425
425
425
425
425
426
426
426
426
427
427
427
427
427
430
432
433
436
438
444
446
446
446
446
448
449
449
451
453
454
455
456
457
457
458
458
461
467
471
476
479
479
480
480
483
485
486
486
486
486
486
486
486
488
490
490
492
492
496
501
507
508
516
516
516
516
516
516
516
516
520
520
522
528
532
537
544
545
546
546
547
547
547
547
551
552
553
554
555
561
563
565
566
573
580
582
587
593
593
594
594
595
597
597
598
599
602
604
613
614
621
622
625
626
631
632
633
637
637
638
640
646
647
648
649
650
651
655
657
658
660
661
682
682
688
690
691
692
693
694
696
698
699
702
702
702
703
704
705
706
706
706
707
708
710
711
712
714
717
718
719
720
722
724
725
726
726
726
726
727
727
727
727
727
727
730
732
733
733
734
735
735
740
741
741
741
741
746
747
748
749
749
750
751
755
756
756
757
760
760
761
761
762
764
765
766
767
768
769
770
775
776
776
777
778
780
780
782
783
783
787
788
788
789
789
791
793
795
795
796
798
799
800
801
801
802
802
804
804
808
812
813
814
814
814
815
816
816
817
818
819
823
826
828
828
828
828
828
828
828
828
828
828
828
829
829
829
829
829
833
834
833
831
830
829
828
827
820
819
819
820
820
820
822
822
822
820
814
810
810
809
808
805
803
802
799
799
798
797
794
792
791
789
788
785
785
784
783
782
780
780
779
777
777
777
777
777
780
781
783
783
784
784
784
781
779
776
772
771
769
768
764
761
761
761
761
760
760
760
760
759
758
757
752
752
750
747
743
742
740
740
739
738
737
731
729
728
727
726
722
719
717
715
718
719
719
719
720
721
724
724
724
723
722
707
701
701
698
697
697
695
694
694
692
691
689
688
687
686
685
685
683
681
679
675
675
675
674
674
674
674
674
673
673
672
672
672
672
672
671
671
671
667
667
667
666
663
662
661
660
659
657
655
652
651
651
650
650
650
649
649
649
648
647
645
645
644
643
639
638
636
636
635
634
633
632
630
630
629
628
628
628
626
625
624
622
622
622
620
620
618
617
614
612
609
608
606
605
605
604
604
602
601
601
600
600
599
598
597
596
596
596
595
592
592
591
591
591
590
589
588
588
587
586
586
584
584
583
583
582
581
581
580
575
571
569
568
568
562
560
559
556
553
549
547
541
540
539
539
539
538
537
536
535
534
532
532
531
531
531
530
530
530
529
529
529
529
527
527
527
527
526
519
518
512
512
512
512
512
512
512
513
514
516
520
523
523
525
529
530
531
533
536
539
540
541
542
543
546
545
544
543
541
541
541
542
544
546
547
547
547
547
547
546
546
547
547
548
549
550
551
551
551
550
551
552
554
555
560
561
563
563
563
563
563
562
560
560
559
558
556
555
555
554
551
549
548
548
546
545
543
537
536
535
533
533
533
534
536
536
536
537
537
538
539
540
541
542
540
536
530
525
522
521
518
514
508
507
506
506
506
505
504
504
501
501
500
499
498
495
494
492
491
490
490
490
489
486
483
483
477
476
472
470
470
469
468
468
467
466
465
464
464
463
460
459
458
455
455
452
452
451
449
448
447
444
442
438
437
436
431
430
429
429
428
427
424
422
420
420
419
418
418
418
417
416
416
416
410
398
386
384
379
379
378
377
377
375
375
374
374
373
373
372
372
371
371
371
372
373
373
373
372
372
372
371
371
370
364
358
358
359
359
360
362
361
359
358
357
353
351
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
350
350
352
354
356
366
367
368
369
369
368
368
367
366
363
363
362
360
358
357
354
353
351
350
348
344
343
341
341
340
340
340
340
340
340
340
340
340
339
339
339
339
339
339
340
340
341
342
343
343
343
341
341
341
340
340
338
337
337
336
331
331
331
333
334
335
337
334
332
332
332
330
329
329
329
326
325
322
320
320
319
319
317
317
316
315
314
314
313
310
309
308
308
303
297
295
287
287
287
287
280
279
278
277
276
275
275
275
275
275
275
275
275
283
284
287
287
287
287
287
287
287
289
290
293
294
296
297
298
299
300
309
309
311
312
313
315
317
317
319
319
320
321
321
326
323
322
321
321
325
327
329
335
337
334
321
320
318
320
320
320
317
317
317
318
320
320
320
319
318
316
316
320
322
323
329
330
330
325
321
321
322
322
324
335
337
337
337
334
332
330
330
331
333
331
330
331
333
334
336
338
338
338
337
333
330
330
326
324
323
320
321
321
322
322
322
322
323
325
338
338
338
338
338
338
338
338
339
341
341
342
343
343
343
343
343
342
342
342
341
341
341
339
341
344
346
335
332
330
330
329
328
328
325
324
319
318
318
318
318
318
318
318
323
327
328
329
328
328
327
326
322
320
319
318
318
319
322
329
329
330
331
331
331
337
343
354
359
361
362
365
366
367
370
371
372
373
374
375
376
377
377
377
375
375
375
375
375
374
371
370
370
369
359
348
348
348
347
347
331
331
332
333
340
340
340
339
343
347
348
353
355
358
358
358
357
357
356
356
356
356
356
356
356
357
357
356
355
354
354
350
349
349
349
349
349
350
355
356
356
356
356
356
356
357
357
357
357
357
357
357
356
356
356
356
356
356
356
356
356
356
356
356
356
356
356
355
355
352
349
349
349
349
349
350
356
356
356
357
358
359
368
369
370
370
370
370
370
371
371
372
373
373
374
374
377
378
380
384
387
391
395
396
400
401
401
402
403
404
405
405
405
409
409
409
410
411
414
424
425
426
440
441
442
443
444
459
460
463
463
460
459
457
457
454
454
452
449
448
447
446
446
444
444
445
445
446
446
448
449
452
453
456
462
467
467
467
467
468
468
469
469
470
471
472
477
478
482
482
482
482
482
482
484
486
488
490
492
494
494
494
494
494
494
494
494
494
494
494
493
493
493
493
493
495
495
495
493
491
487
489
490
495
496
496
498
498
499
499
500
501
502
502
503
503
503
503
503
504
504
505
505
506
510
511
512
516
529
548
553
558
561
559
558
558
560
562
563
564
565
566
566
570
571
571
571
572
572
573
575
575
575
575
575
577
581
583
584
584
585
590
592
594
594
594
594
594
594
594
594
598
599
601
601
602
602
604
608
613
617
629
631
632
634
635
636
637
639
640
642
644
646
648
654
655
655
655
655
656
656
658
658
659
658
655
655
655
655
655
655
655
656
657
659
659
659
659
660
660
661
666
667
670
670
671
672
672
672
672
674
674
674
675
675
675
676
677
679
681
681
682
682
682
683
686
692
693
693
694
701
706
715
720
722
725
726
728
730
734
735
736
737
739
739
740
741
741
742
742
743
743
743
744
745
745
746
746
749
749
750
751
752
755
756
758
761
766
768
772
775
778
783
786
785
784
784
784
784
783
782
782
783
788
793
804
804
804
804
804
804
804
807
810
813
821
823
825
827
829
832
833
837
837
837
837
838
840
845
849
850
850
851
851
860
860
859
858
858
857
857
857
856
856
856
857
858
858
859
860
861
861
863
863
866
867
868
868
869
869
871
871
872
874
876
884
886
889
891
893
894
897
898
899
900
901
901
901
901
901
902
902
904
904
904
906
907
908
908
908
908
908
909
910
912
915
918
918
918
918
918
918
918
922
924
927
928
929
929
934
947
949
953
954
954
955
955
955
955
956
957
958
959
960
961
963
966
967
967
967
968
968
970
972
973
975
977
988
1006
1010
1011
1012
1013
1014
1014
1017
1017
1018
1019
1020
1022
1035
1038
1047
1048
1049
1049
1050
1050
1050
1050
1050
1050
1060
1070
1073
1074
1074
1074
1074
1073
1072
1068
1065
1065
1056
1053
1050
1045
1043
1042
1042
1042
1042
1042
1039
1038
1034
1032
1030
1027
1025
1025
1023
1022
1021
1019
1019
1018
1018
1018
1018
1018
1018
1018
1019
1019
1019
1018
1017
1016
1001
995
993
993
993
993
992
992
992
989
983
982
981
980
979
977
974
973
972
970
969
968
968
967
967
967
966
966
965
962
961
959
957
954
949
947
946
945
943
942
941
940
940
939
939
938
936
935
935
936
936
937
938
937
936
935
934
932
931
927
925
925
926
926
927
927
924
920
918
917
915
913
908
906
903
900
900
900
900
900
900
900
899
897
893
888
880
871
867
866
864
863
863
863
865
866
866
867
868
866
865
862
860
859
859
858
858
857
856
855
854
852
851
850
848
847
844
842
840
839
838
836
836
833
831
830
825
824
823
818
817
815
814
811
811
811
811
811
811
811
811
811
811
810
807
805
799
796
794
779
778
774
772
772
770
768
768
763
757
756
751
750
748
748
744
744
742
742
742
742
742
742
743
743
744
744
744
742
738
736
727
723
719
712
710
706
704
699
698
693
690
686
684
684
683
682
682
682
681
681
681
680
676
675
675
675
675
658
656
654
651
648
641
640
636
636
635
627
626
623
622
625
629
630
631
632
634
637
640
647
645
640
632
630
622
608
600
594
594
594
594
595
595
595
595
595
592
591
590
589
587
584
581
578
575
573
572
571
570
570
569
569
568
568
567
567
566
564
560
560
558
555
554
552
549
547
544
543
542
542
542
542
542
542
540
538
541
544
544
543
541
541
540
539
539
538
538
534
533
526
525
523
521
518
511
511
511
511
511
511
511
510
510
509
509
509
509
509
509
509
509
510
510
510
511
512
514
514
514
514
514
514
514
514
514
514
514
515
517
517
511
509
508
506
505
504
504
503
502
505
520
524
527
529
534
535
535
536
537
537
538
542
547
551
552
554
555
556
557
557
558
564
565
568
573
576
580
582
595
604
606
607
607
607
608
612
626
629
634
634
634
634
634
634
635
636
637
635
635
632
632
633
634
634
634
635
636
636
638
639
648
651
651
651
652
648
647
645
640
638
636
635
633
632
629
628
626
626
625
625
624
624
624
623
622
621
620
613
612
611
611
611
612
612
612
614
616
617
615
612
610
607
602
599
588
588
587
585
581
580
580
580
580
580
580
580
579
574
573
572
565
563
561
561
559
555
554
548
548
548
548
548
548
548
548
546
542
540
539
537
536
536
534
533
530
530
525
524
524
523
522
522
518
517
517
513
509
501
500
499
499
499
499
499
498
485
482
479
471
468
450
450
450
450
450
452
456
459
462
463
463
463
463
463
467
469
470
471
472
472
474
475
475
475
475
475
475
475
475
472
472
472
471
471
459
461
460
453
451
445
431
437
430
427
427
428
426
420
399
399
401
403
402
400
400
400
400
400
405
408
412
413
411
410
407
404
404
402
398
396
396
392
391
391
390
390
390
389
389
389
389
389
388
385
385
384
382
382
382
375
375
375
375
375
375
374
374
374
373
373
373
373
373
372
372
372
372
372
372
372
372
371
371
371
371
372
372
373
373
373
373
373
374
375
375
375
375
375
375
375
375
375
375
375
374
374
374
373