956
955
954
953
952
948
948
948
949
943
939
937
925
924
924
924
926
928
929
931
932
932
932
929
927
924
924
921
921
921
922
923
923
924
923
922
921
920
910
906
903
896
888
863
859
856
850
846
846
847
848
849
849
845
843
842
840
840
843
845
847
849
851
860
863
865
867
870
873
873
877
880
886
891
895
898
899
900
900
901
903
904
904
903
902
900
898
895
890
894
896
900
907
911
918
919
918
918
917
911
901
893
887
887
888
891
885
885
885
881
875
870
854
854
855
855
855
857
860
872
883
885
888
889
889
889
891
892
894
896
908
913
917
921
924
922
922
930
936
943
950
952
952
952
952
953
956
958
960
960
961
957
954
951
951
951
947
948
950
951
951
952
952
952
950
948
948
949
950
951
951
953
963
968
964
968
980
999
1000
997
995
993
993
992
989
988
986
984
982
982
982
982
982
982
985
987
988
988
989
990
1004
1010
1016
1014
1039
1039
1039
1041
1043
1044
1045
1045
1047
1049
1051
1053
1036
1030
1025
1020
1017
1019
1020
1023
1027
1030
1033
1036
1044
1040
1035
1031
1028
1024
1013
1010
1007
1004
1002
1010
1012
1013
1006
1005
1004
989
991
995
998
1001
1002
1014
1019
1017
1016
1015
1013
1010
1008
1006
1003
1001
1000
999
1000
1004
1008
1011
1014
1016
1018
1019
1021
1023
1024
1027
1014
1014
1016
1016
1016
1017
1018
1018
1019
999
1000
1003
999
991
987
983
975
969
962
964
966
968
969
963
957
953
950
946
946
947
949
945
935
934
929
926
925
925
913
911
909
900
892
877
871
861
859
855
853
852
850
846
842
841
838
836
835
833
835
834
816
809
802
794
791
786
788
785
775
772
775
760
751
747
746
745
745
744
743
743
741
741
740
739
730
726
720
720
720
720
720
719
717
715
712
710
709
708
706
705
704
702
702
700
700
700
699
699
698
698
697
696
696
693
691
680
681
683
682
676
675
686
685
684
683
681
682
681
678
664
663
663
663
662
661
660
660
661
662
663
663
663
663
663
658
657
656
652
653
653
654
654
652
648
645
647
648
649
644
635
637
636
639
640
637
646
657
658
660
664
667
669
673
677
679
679
680
680
676
674
674
675
675
672
672
671
670
671
671
671
672
671
671
670
669
668
668
667
667
660
658
655
653
650
649
635
628
625
623
623
623
623
617
615
613
611
608
608
608
608
608
606
603
600
598
597
595
593
592
591
591
589
588
584
572
571
570
568
567
567
566
564
563
563
562
554
554
555
556
557
557
558
558
556
545
543
542
539
536
537
538
541
542
543
544
539
538
534
532
531
529
530
530
531
533
534
536
536
536
521
514
505
508
517
519
522
521
520
520
518
516
514
513
512
508
507
506
505
504
503
502
501
499
497
488
484
473
468
473
479
487
487
486
484
481
479
476
474
472
468
466
465
464
464
463
463
465
466
466
468
471
472
472
471
470
468
467
465
464
463
462
460
459
459
457
453
450
450
444
439
438
435
435
434
433
430
428
424
423
420
413
411
410
410
410
409
409
409
409
410
406
403
401
396
393
390
387
378
374
372
373
379
382
379
376
380
378
364
352
337
334
331
328
329
332
335
342
346
337
333
360
361
358
356
354
352
349
312
308
306
313
303
296
292
289
286
285
286
290
291
293
294
296
300
299
295
293
292
290
288
283
282
281
280
279
278
276
275
274
271
269
266
265
256
254
252
251
249
248
247
245
243
235
233
229
214
211
212
220
223
225
233
242
243
239
237
232
230
229
225
224
223
220
224
235
246
251
264
268
262
252
256
258
260
263
264
265
266
267
268
263
261
260
259
257
282
294
296
295
292
290
288
286
283
275
270
271
274
275
283
287
293
294
295
296
298
304
310
312
315
317
319
321
323
322
314
312
308
304
304
304
304
304
309
318
326
332
331
329
328
326
330
332
350
352
357
359
359
360
360
362
363
377
379
382
382
382
382
382
382
386
388
394
397
415
422
430
432
435
435
434
426
424
432
435
438
440
444
452
470
475
469
466
464
467
475
485
485
485
484
483
483
482
478
477
476
476
476
474
474
473
473
473
474
474
475
477
483
488
493
505
506
505
504
501
501
507
520
524
525
526
527
534
540
540
540
540
540
541
542
543
546
546
546
545
543
541
540
541
549
556
557
559
560
561
562
562
562
564
568
571
572
572
571
570
569
568
570
571
576
577
578
578
579
582
587
588
591
594
592
595
600
616
625
629
631
632
633
633
634
634
635
635
634
634
633
633
632
632
632
632
632
632
632
640
652
655
656
656
656
656
656
656
653
651
645
641
637
658
669
669
669
669
669
670
670
673
685
689
691
694
694
694
694
695
711
715
722
719
717
715
714
712
711
708
706
705
698
696
693
691
683
686
693
702
709
713
715
716
718
720
722
730
737
737
736
734
732
731
728
728
727
727
727
727
726
725
725
725
721
717
716
714
716
731
735
737
731
726
723
722
720
718
716
714
712
711
709
707
701
703
707
711
720
726
726
726
728
726
722
723
727
728
728
730
733
734
735
738
739
748
750
755
755
755
756
756
756
757
757
757
758
759
760
761
764
765
767
768
773
777
779
784
788
791
798
803
805
806
808
811
813
814
815
815
815
815
815
815
815
816
816
816
816
816
816
816
818
826
833
835
849
851
848
846
845
845
846
848
850
854
856
863
871
872
873
879
880
881
882
886
887
888
889
889
888
888
887
887
886
886
885
885
886
886
886
887
887
889
889
890
891
891
892
893
894
894
894
894
894
894
894
894
894
894
894
894
894
894
895
896
897
900
903
903
903
903
903
902
902
908
908
908
912
912
912
913
914
916
916
917
919
919
920
920
919
919
918
918
918
918
918
918
918
918
918
918
918
917
915
915
913
911
908
903
903
903
903
903
903
902
901
900
899
898
897
895
894
892
891
891
895
897
897
897
898
899
899
899
892
889
882
877
876
875
873
872
872
872
873
875
875
876
876
876
876
875
875
874
873
873
873
873
873
872
872
870
867
866
865
864
862
861
860
860
860
860
855
852
845
843
841
840
839
838
835
828
827
826
825
825
830
838
840
842
842
842
841
841
841
840
838
836
836
836
837
837
837
834
832
829
827
820
820
823
824
824
825
825
826
827
826
825
824
823
817
813
812
807
824
826
824
815
812
808
805
806
806
810
810
811
811
811
810
807
806
805
800
798
797
796
795
794
792
785
783
782
781
782
782
782
781
779
777
775
771
770
768
767
767
767
766
766
760
755
752
750
749
749
749
749
749
749
749
749
749
750
747
745
744
743
743
743
742
742
741
741
737
734
731
730
729
727
727
727
727
725
724
737
745
754
757
755
751
737
732
728
719
721
727
731
732
728
725
724
719
715
709
706
704
704
705
706
706
707
709
709
706
704
704
701
699
692
685
686
704
704
703
702
692
690
687
672
670
656
652
642
640
636
632
629
624
623
611
613
613
618
620
622
624
625
617
615
613
610
610
609
608
606
605
599
597
594
592
590
587
581
579
578
575
574
572
569
568
567
566
565
562
561
559
556
554
554
555
556
557
551
549
548
546
544
537
536
534
526
522
520
519
506
499
495
492
487
480
476
476
472
465
463
459
447
447
442
439
438
436
434
432
429
428
427
426
419
417
414
418
419
419
421
422
424
425
426
425
424
424
408
403
400
399
398
395
394
393
393
392
391
391
391
391
391
392
393
396
398
400
402
404
405
408
410
411
413
414
413
410
403
396
394
390
390
391
392
393
405
403
402
400
399
398
398
398
402
407
409
410
407
403
398
390
379
375
373
370
369
368
366
362
360
356
355
355
348
343
338
334
327
323
320
319
321
325
327
328
328
329
330
331
330
328
324
320
312
310
309
309
307
306
305
305
301
298
296
296
293
290
287
285
282
281
281
279
278
273
268
268
267
267
267
267
267
267
267
267
267
267
269
270
274
275
278
282
286
288
292
295
299
303
305
309
311
311
311
311
321
325
336
340
342
345
350
354
355
357
358
358
358
358
356
358
360
364
371
373
373
373
373
373
374
382
405
412
414
415
417
418
420
426
430
431
428
422
419
417
414
414
415
416
416
417
418
412
405
404
403
402
399
398
396
392
388
385
381
377
377
374
373
373
374
374
376
378
380
383
384
386
390
390
388
387
386
384
382
366
364
364
361
360
359
357
357
350
348
344
343
341
340
340
341
343
344
346
346
344
340
338
336
336
337
341
342
349
353
361
365
372
374
382
382
382
389
403
404
406
407
412
415
420
420
420
420
420
421
421
422
425
430
430
432
433
434
435
436
438
439
443
446
451
456
464
473
475
474
470
467
464
461
460
462
464
475
479
479
480
482
486
488
493
496
503
508
514
519
515
513
512
512
509
507
503
500
502
503
504
508
509
512
516
518
520
518
515
514
520
522
525
523
522
521
517
520
523
524
527
530
536
538
541
542
547
549
552
552
552
551
550
548
547
547
548
548
549
555
556
557
558
560
553
552
548
548
548
548
548
548
553
559
561
567
571
576
576
577
578
578
578
577
573
572
571
569
570
573
574
574
575
584
593
602
603
603
600
598
598
596
595
594
591
591
590
589
589
588
588
586
586
586
587
588
597
603
609
614
615
616
617
618
618
621
621
620
618
610
609
609
611
613
615
618
624
628
627
625
625
624
622
622
624
629
636
640
645
654
664
667
683
686
687
688
691
692
693
697
701
702
700
697
694
692
687
681
691
710
718
719
720
721
721
723
724
725
728
734
738
740
742
743
744
744
754
756
758
765
769
772
773
774
775
777
778
780
781
781
783
784
785
789
790
792
793
793
793
793
794
794
801
810
820
825
831
828
828
827
826
825
822
821
820
816
815
814
813
815
817
822
824
825
829
832
834
842
844
845
845
844
844
846
859
870
881
890
891
892
894
901
904
906
910
909
907
905
899
896
892
891
890
885
885
885
884
884
889
900
901
902
907
908
909
909
910
912
913
916
920
925
926
928
930
935
945
949
950
951
955
957
955
955
953
952
952
951
950
950
953
966
975
976
976
976
976
976
975
974
967
961
960
947
944
944
945
948
951
952
962
970
980
986
987
989
991
995
997
999
1003
1011
1015
1016
1017
1020
1021
1022
1026
1030
1031
1033
1034
1035
1036
1038
1042
1047
1050
1052
1057
1061
1070
1071
1073
1076
1077
1078
1081
1082
1084
1085
1088
1089
1090
1093
1095
1100
1103
1107
1110
1112
1113
1107
1100
1099
1096
1093
1090
1088
1083
1082
1080
1078
1076
1073
1074
1084
1089
1090
1091
1091
1091
1091
1090
1089
1089
1089
1089
1101
1109
1122
1126
1128
1136
1135
1130
1128
1125
1122
1119
1117
1124
1137
1152
1154
1155
1157
1158
1159
1161
1161
1157
1150
1139
1134
1134
1134
1125
1115
1103
1097
1098
1099
1088
1081
1074
1067
1063
1063
1064
1067
1066
1065
1064
1063
1062
1059
1052
1048
1045
1038
1037
1034
1030
1026
1013
998
990
981
974
968
959
945
937
928
921
928
932
931
927
900
886
876
871
890
890
885
876
866
859
856
854
857
866
834
829
829
827
826
825
824
823
822
819
801
799
796
792
790
793
795
797
798
800
802
802
801
799
798
798
793
789
787
768
768
770
772
777
780
781
780
779
777
776
774
769
767
766
766
757
754
734
734
734
734
728
721
714
710
707
706
704
703
702
697
696
702
711
713
716
717
717
716
716
715
715
714
713
713
713
713
711
707
694
684
682
680
678
675
673
681
693
696
700
704
709
713
716
719
716
697
693
688
687
684
683
683
678
675
673
671
668
665
663
656
654
652
651
649
648
654
656
659
661
663
664
664
664
664
660
657
648
647
645
638
635
632
630
626
624
621
618
603
604
607
607
603
594
592
592
586
584
580
578
574
571
564
563
562
561
560
559
558
555
551
548
546
542
542
544
545
546
532
528
524
520
510
506
503
500
498
489
491
494
497
502
505
500
489
487
483
480
474
472
471
470
468
464
460
461
472
477
482
485
483
459
446
439
438
438
437
436
422
417
413
408
396
394
394
392
388
387
386
383
382
375
378
389
390
384
373
368
366
362
357
358
358
359
358
356
354
347
346
345
345
345
343
343
343
343
343
364
367
367
368
368
368
369
367
365
363
369
397
400
400
400
400
401
402
397
396
391
389
384
386
396
399
396
398
399
403
398
387
380
375
372
373
377
406
413
415
415
414
414
412
405
403
387
387
386
385
388
391
398
413
415
414
408
402
394
394
394
395
397
400
410
412
414
415
417
418
420
421
423
429
428
428
425
423
423
419
412
408
401
401
402
403
411
412
411
409
400
397
389
389
391
397
399
401
410
413
423
427
425
420
412
393
389
386
385
388
366
357
346
341
338
332
330
323
318
317
316
315
314
314
312
309
309
309
307
300
299
295
293
294
294
295
295
295
290
286
277
265
264
263
262
262
262
263
263
264
264
261
256
254
255
259
258
259
279
283
285
289
291
292
293
294
295
298
300
300
301
301
302
299
297
288
279
277
277
276
276
276
282
285
287
292
295
297
298
305
308
311
301
289
285
276
275
277
281
282
285
285
280
278
272
267
265
262
260
256
256
255
257
259
261
263
264
271
276
278
279
281
284
285
293
297
303
306
307
309
314
316
317
319
320
323
328
328
328
327
326
323
316
313
303
297
298
301
305
307
314
314
313
313
312
312
318
318
315
312
311
310
310
312
314
316
318
317
316
314
312
311
310
316
319
329
316
311
313
313
316
315
309
307
306
306
305
305
304
303
303
303
309
311
313
314
316
318
320
319
316
314
313
306
306
306
306
306
306
306
306
305
304
304
303
303
303
303
303
303
303
304
305
306
306
306
305
305
304
304
303
302
300
297
296
294
294
293
293
292
292
297
300
302
311
313
316
317
317
317
317
317
317
316
315
313
309
305
303
303
303
304
305
307
308
309
310
311
312
312
304
298
297
296
296
298
299
299
299
300
300
300
300
300
300
293
291
289
288
288
289
289
289
290
294
299
298
297
295
292
289
287
294
307
311
313
310
307
305
291
284
283
280
292
298
301
303
300
299
297
296
291
290
287
286
283
281
280
279
278
275
273
271
270
268
257
249
246
248
249
249
250
250
251
251
252
252
253
253
250
249
249
249
252
266
267
267
267
267
262
257
252
245
240
234
231
227
227
225
224
219
218
218
222
235
239
250
249
248
245
244
243
238
237
235
235
234
234
234
234
234
234
234
236
242
250
250
250
250
250
250
250
250
250
250
250
249
249
248
248
248
248
247
247
246
240
239
238
236
236
236
238
238
239
239
240
241
250
264
270
290
293
310
317
318
319
323
323
319
308
306
310
315
318
318
316
318
322
337
348
350
351
352
352
353
354
354
355
356
361
364
384
388
390
390
390
390
390
390
426
435
449
449
449
449
449
449
439
430
427
423
417
415
420
423
426
429
430
433
445
446
446
446
446
446
446
448
450
452
456
446
433
427
427
427
427
427
429
434
438
445
448
449
450
450
452
454
455
456
455
454
453
452
450
449
452
458
463
470
479
480
482
483
484
491
500
509
512
517
533
534
535
537
538
538
535
527
531
534
540
542
542
544
546
549
550
552
552
554
555
556
555
553
552
552
552
551
551
551
551
553
554
556
560
562
567
567
568
565
560
540
536
538
540
542
558
566
576
580
582
580
576
570
578
587
589
591
597
598
599
599
601
603
602
600
599
597
597
597
592
591
590
589
587
585
583
570
565
571
575
578
581
583
587
591
588
589
591
592
598
600
604
607
611
618
618
619
621
620
620
619
618
618
617
613
612
611
608
607
606
606
605
603
582
575
574
569
566
561
556
556
558
560
562
561
559
554
552
549
547
547
551
553
553
547
542
539
533
517
511
511
513
515
521
523
525
527
528
520
515
505
509
515
519
521
525
526
524
521
519
517
517
515
510
503
505
510
522
525
526
527
528
529
530
532
536
538
540
542
553
556
557
553
551
543
530
527
523
514
477
476
476
475
475
472
472
474
474
475
475
472
471
470
469
466
461
451
447
439
437
434
432
430
428
427
421
419
418
415
413
409
400
397
396
395
393
384
378
374
371
367
359
357
356
356
356
356
356
358
358
359
358
357
355
353
351
347
335
333
330
326
327
328
330
333
335
336
339
338
336
335
337
339
341
343
345
350
356
357
353
351
351
348
352
353
354
356
357
361
362
362
365
366
367
368
379
381
382
383
384
387
390
402
414
417
417
418
419
420
420
421
421
424
426
429
429
428
425
424
424
424
427
434
435
437
442
439
437
435
433
432
442
445
454
457
461
467
460
459
452
453
453
453
454
454
456
460
463
466
468
469
470
471
471
471
471
472
472
482
486
497
493
485
482
479
476
477
484
485
486
489
491
503
506
509
517
522
530
535
537
531
514
512
515
525
528
536
540
543
548
550
554
556
560
561
562
563
562
560
559
559
558
575
582
589
589
589
589
590
593
595
597
599
603
605
609
610
616
619
626
626
626
626
626
626
629
632
635
647
648
649
651
654
663
665
666
668
673
674
674
673
673
673
673
673
673
673
673
673
676
680
685
690
694
700
705
709
715
721
728
729
732
734
736
737
739
739
739
752
754
751
750
749
743
742
744
747
751
754
759
766
775
778
780
783
779
777
775
775
774
772
773
780
785
793
803
805
805
803
801
794
798
806
812
816
819
828
830
831
833
836
838
840
841
846
846
846
846
845
840
837
814
808
802
795
809
814
826
833
844
849
853
857
860
862
865
868
874
876
878
882
883
885
889
892
892
893
897
906
913
916
919
919
919
919
919
919
919
917
915
914
913
912
911
905
907
908
910
911
913
913
914
917
921
922
923
924
925
927
928
932
933
933
933
933
933
933
938
941
943
945
947
949
949
950
950
953
954
954
956
956