261
261
261
261
262
262
263
263
263
263
264
264
265
265
267
266
264
264
265
266
266
267
267
267
267
267
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
269
269
269
270
270
270
271
271
271
272
272
273
274
274
274
274
274
274
274
274
274
275
275
275
271
270
270
270
270
271
272
272
272
272
273
274
274
274
273
273
273
273
273
273
272
272
272
272
272
272
272
272
272
272
273
273
273
273
273
274
274
274
274
274
274
274
274
275
275
275
275
276
276
276
276
276
276
276
276
276
277
277
277
277
277
277
277
277
277
278
278
278
278
280
280
280
280
280
281
281
281
281
281
281
282
282
282
282
282
282
282
282
283
283
283
283
282
285
285
286
286
287
287
288
288
288
291
292
292
292
292
292
290
289
289
289
290
290
291
292
293
295
295
295
295
295
295
295
295
296
296
296
297
297
298
298
299
299
301
302
303
303
303
302
301
301
301
300
300
299
298
298
298
298
298
298
298
298
298
298
298
298
299
299
300
300
301
301
301
302
302
305
306
308
309
310
311
312
313
314
314
314
314
315
315
315
316
316
317
317
318
318
319
319
319
320
320
320
320
321
321
321
322
322
325
326
328
328
329
330
330
333
333
334
335
335
335
335
334
334
334
333
332
331
330
329
329
328
329
331
334
336
338
340
341
340
338
337
336
335
335
334
333
333
328
327
327
327
327
327
327
328
328
328
328
328
328
329
329
329
329
329
329
330
330
330
331
332
332
332
332
333
333
334
335
335
335
335
335
335
335
335
336
336
337
338
338
339
339
339
339
339
339
338
338
337
337
337
337
337
337
337
337
337
337
337
337
338
339
340
345
350
351
352
352
353
353
353
354
354
355
355
356
356
357
358
358
359
359
359
359
359
359
359
360
360
360
360
360
360
360
360
360
360
360
360
360
362
364
366
368
369
371
371
372
373
374
377
378
378
378
378
378
378
378
378
378
378
378
378
379
379
379
379
379
379
379
379
379
379
379
379
380
380
380
381
382
382
383
384
385
386
386
386
386
386
386
387
387
387
387
387
388
388
388
389
390
390
390
391
392
392
393
393
394
396
398
398
399
400
402
402
404
404
407
408
409
411
412
414
416
417
417
417
418
419
419
419
419
419
419
419
419
419
419
419
420
422
423
426
427
432
433
435
436
437
438
439
441
441
441
441
441
440
440
440
440
440
440
440
440
440
440
440
442
445
450
452
455
455
456
458
460
460
461
462
468
469
469
470
472
473
475
476
477
481
487
489
494
503
507
511
533
542
543
543
544
546
547
548
549
550
552
552
552
554
556
556
558
564
568
573
576
577
579
580
585
590
594
602
608
610
611
614
616
618
620
626
628
631
634
638
642
650
653
651
649
648
647
646
644
643
642
642
641
641
642
647
650
655
659
664
672
675
679
687
689
700
705
712
719
732
737
737
739
740
742
746
747
749
753
754
755
757
758
765
767
769
772
774
778
779
784
792
798
805
811
812
833
836
845
851
852
850
848
846
836
832
825
817
814
810
808
806
802
797
789
789
789
789
790
790
790
791
791
792
792
794
794
795
796
801
801
802
804
805
806
810
812
813
814
816
817
820
825
827
828
828
828
829
829
829
829
829
829
830
830
831
831
831
831
833
839
840
841
842
844
847
849
852
854
855
860
864
866
866
869
866
860
858
855
851
849
846
845
843
842
839
835
832
829
829
830
830
831
831
831
832
832
833
833
834
834
835
835
836
837
837
839
839
836
836
834
832
832
829
829
829
829
828
827
829
831
833
836
839
841
843
844
845
849
851
838
829
823
795
781
772
772
761
750
728
713
708
699
697
692
690
687
684
681
679
677
675
665
655
649
645
643
639
633
628
620
611
608
606
604
602
600
595
591
584
579
577
575
571
570
569
569
568
568
567
566
565
565
565
563
562
561
560
558
558
558
557
555
555
554
554
554
553
552
550
547
545
543
539
538
537
533
530
529
528
527
527
526
522
521
520
519
519
519
518
518
518
517
517
516
516
515
515
514
514
513
513
512
510
510
509
504
504
502
501
500
499
498
497
497
497
497
496
495
495
494
494
494
493
493
493
492
491
490
489
488
488
485
484
483
482
481
479
477
476
476
475
474
473
473
472
472
471
469
468
467
467
467
467
465
465
464
463
462
461
460
459
457
457
456
456
455
455
455
455
454
454
454
453
453
453
453
453
453
453
453
453
453
453
453
452
452
451
451
451
450
450
450
450
450
450
450
443
443
443
443
445
445
445
446
446
448
446
444
442
440
440
440
439
438
438
437
437
437
437
436
436
435
435
435
435
435
436
436
436
436
436
436
436
436
436
436
437
437
437
437
437
438
438
438
438
438
438
440
443
444
445
447
449
450
452
455
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
460
461
462
467
468
472
473
473
473
475
475
476
476
479
479
479
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
480
481
489
491
493
498
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500
504
506
508
513
520
521
525
527
528
529
531
535
536
537
537
537
535
525
523
524
525
529
529
531
532
534
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
541
541
541
541
542
542
542
542
546
550
551
554
555
555
555
555
556
556
558
560
561
563
565
565
566
566
567
567
568
569
576
577
579
580
582
583
585
588
589
593
596
596
597
598
598
599
599
600
600
600
600
600
600
600
600
600
609
614
622
628
633
646
651
658
674
674
675
677
677
678
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
680
681
682
683
688
689
690
691
694
698
699
701
703
705
706
706
709
710
710
713
716
717
726
727
735
745
752
757
758
760
764
766
769
771
774
775
778
782
785
788
791
792
795
797
800
803
807
818
823
825
828
830
832
834
836
837
837
839
842
843
845
849
851
853
856
860
867
874
882
898
905
914
918
922
927
932
939
943
945
948
952
954
955
957
961
965
967
974
998
1022
1046
1067
1084
1086
1090
1092
1096
1098
1102
1105
1108
1110
1119
1123
1126
1128
1131
1135
1138
1139
1140
1140
1141
1143
1145
1146
1147
1149
1153
1161
1163
1168
1176
1183
1185
1188
1191
1194
1196
1197
1199
1200
1200
1202
1203
1206
1213
1218
1219
1227
1235
1238
1239
1239
1239
1239
1239
1239
1239
1239
1240
1240
1240
1240
1240
1240
1240
1240
1240
1240
1240
1240
1240
1240
1240
1239
1238
1237
1237
1236
1236
1235
1234
1234
1234
1233
1232
1231
1229
1229
1189
1185
1176
1164
1158
1137
1118
1102
1099
1098
1098
1097
1097
1097
1097
1096
1096
1096
1096
1096
1095
1095
1095
1095
1096
1099
1100
1102
1103
1098
1096
1095
1094
1093
1091
1090
1088
1087
1083
1081
1075
1073
1068
1066
1066
1063
1060
1058
1052
1051
1048
1047
1044
1041
1040
1038
1036
1030
1026
1009
991
980
969
947
936
920
912
900
893
889
888
878
870
863
856
848
836
824
818
807
796
784
780
758
753
748
743
735
726
717
710
703
687
681
672
659
659
658
657
655
654
653
652
650
649
649
647
646
643
642
641
641
641
639
637
635
634
626
625
624
618
595
576
575
573
571
570
567
561
560
554
543
541
537
536
535
531
525
520
517
515
513
513
513
512
511
502
498
496
492
489
478
474
471
469
463
459
458
454
453
453
453
452
452
448
447
446
444
442
442
441
440
438
438
438
438
438
437
437
437
437
437
437
437
434
434
433
432
431
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
430
429
429
429
428
428
428
428
428
428
428
428
428
428
428
428
428
428
428
428
429
429
430
430
430
430
430
430
430
430
429
429
429
429
429
429
429
429
429
429
429
432
438
438
439
439
439
440
446
446
446
447
447
447
448
448
448
451
456
458
460
461
462
464
469
470
472
472
473
474
475
476
476
476
476
476
476
478
471
470
483
485
481
481
479
482
500
500
501
501
501
501
502
503
505
506
507
511
511
511
512
518
519
521
524
527
527
527
527
522
519
518
518
517
516
513
512
510
504
499
497
497
496
496
496
496
493
489
487
480
480
480
480
480
480
480
481
489
493
494
495
495
496
506
508
516
517
520
521
522
524
526
526
527
529
530
531
531
533
536
538
543
544
544
545
545
546
546
546
547
547
549
550
551
552
552
553
553
553
554
556
556
557
559
560
560
560
560
560
561
564
565
565
566
570
572
574
578
579
580
580
580
580
581
581
582
582
582
581
579
576
572
569
558
558
557
557
554
553
551
548
547
547
545
545
544
544
544
543
543
543
542
542
541
540
539
538
537
536
536
535
534
530
530
530
531
531
531
532
532
532
532
532
531
531
530
530
530
530
530
530
530
530
530
530
531
531
531
532
532
532
532
533
534
535
535
537
538
538
540
541
543
545
545
545
546
547
547
548
548
548
549
551
552
552
552
552
552
553
553
554
554
555
555
556
557
560
560
560
561
561
561
563
564
564
565
565
564
560
560
560
560
560
560
560
560
560
560
560
560
560
560
561
561
561
561
561
561
562
562
562
562
562
558
557
556
555
554
552
551
551
550
549
548
548
548
549
549
549
550
550
551
550
547
545
544
544
542
542
541
541
541
540
540
540
541
542
542
543
543
543
543
543
538
532
529
524
514
516
524
531
539
540
540
542
542
542
544
546
547
548
549
549
549
549
548
548
548
547
547
547
547
547
547
547
547
547
547
548
549
549
549
550
550
550
552
552
552
552
552
554
556
557
557
559
559
559
559
559
559
559
559
559
559
558
557
555
555
555
556
557
557
558
559
559
559
559
563
564
565
565
566
566
566
566
568
571
572
576
576
576
576
577
577
577
578
578
578
578
578
578
578
578
578
578
578
578
578
578
578
576
574
572
570
570
568
566
564
563
562
562
561
561
561
560
560
560
560
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
560
560
560
561
562
562
564
571
573
574
574
574
574
574
574
574
575
574
574
574
574
574
574
574
573
573
573
574
574
574
575
575
575
575
577
578
579
580
580
581
582
585
586
593
595
595
591
591
589
589
589
589
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
587
588
588
588
588
588
588
588
588
588
584
550
546
546
545
543
540
539
538
537
536
536
535
533
531
531
530
528
527
525
524
523
522
521
520
519
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
518
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
520
520
521
521
521
521
522
522
522
522
523
523
523
523
523
523
523
523
523
523
523
523
524
524
524
524
524
524
525
525
525
525
525
525
525
526
526
526
526
526
526
526
526
526
527
527
527
527
527
528
529
529
529
529
529
529
530
530
530
530
530
530
530
530
530
530
530
530
530
530
530
531
532
532
532
533
534
534
534
534
534
534
534
535
535
539
540
540
540
541
541
541
541
541
542
542
542
542
542
543
543
544
546
547
547
548
548
548
548
548
549
549
549
549
549
547
545
544
544
543
546
546
546
546
546
546
546
546
546
546
546
546
546
545
545
545
545
545
545
545
545
545
545
545
545
545
545
545
547
547
547
548
548
547
546
546
546
546
546
547
547
548
551
552
553
553
554
555
556
556
556
556
556
556
556
556
556
556
556
556
556
556
556
556
555
555
554
553
552
552
552
550
549
549
550
550
551
552
553
554
555
558
559
560
560
560
560
561
561
561
561
561
560
560
559
558
558
558
558
558
558
557
557
557
557
557
557
557
557
556
556
556
556
556
556
556
556
556
556
556
556
557
557
557
557
557
557
557
558
558
558
558
559
559
559
559
559
560
560
560
560
560
560
560
560
561
561
561
561
561
561
561
561
561
561
561
561
561
560
560
560
559
559
559
559
562
563
564
564
565
565
566
566
566
566
566
567
567
567
565
564
563
562
561
561
561
559
559
559
559
559
559
559
559
559
559
559
559
560
560
560
560
561
561
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
562
563
563
564
564
564
565
565
566
567
567
568
569
569
569
567
565
564
562
559
559
558
558
558
558
558
559
559
559
560
560
560
560
560
560
560
559
559
559
559
559
559
559
559
559
559
559
559
559
560
561
561
561
561
562
562
562
563
564
564
565
565
566
566
566
566
566
566
565
565
565
565
564
563
563
562
562
561
560
560
560
560
561
561
561
561
561
561
561
561
560
560
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
560
561
561
561
560
559
559
559
559
559
559
559
559
559
559
560
560
561
561
561
561
561
562
562
562
562
562
561
561
561
561
561
561
560
560
559
559
559
559
559
559
559
559
559
559
559
559
559
559
559
561
562
562
563
564
567
568
569
570
572
573
574
574
575
577
577
578
579
579
582
584
585
586
587
590
591
593
596
597
598
599
602
602
603
603
604
605
605
606
607
609
611
611
611
611
611
611
611
611
611
611
611
611
611
612
612
612
612
612
612
612
612
612
613
613
613
613
613
614
614
614
614
614
614
614
614
614
614
614
614
614
613
613
613
613
613
613
612
612
610
609
609
608
607
607
607
607
608
609
609
609
610
610
610
611
611
612
612
613
612
610
608
605
595
593
578
565
564
559
559
560
561
562
563
564
564
564
565
565
566
566
567
567
567
568
569
570
570
572
573
573
573
573
572
572
570
570
569
568
568
567
567
566
566
566
565
565
564
564
563
563
562
562
562
562
561
561
560
560
559
559
559
559
559
559
559
559
559
560
560
560
561
561
562
562
562
563
563
563
563
562
562
562
562
561
561
561
561
560
560
560
560
560
561
561
561
561
561
561
562
563
566
567
567
567
568
569
569
569
569
569
570
570
570
570
570
570
570
570
570
570
569
567
566
566
566
566
565
565
565
565
564
564
564
564
564
563
563
563
563
563
563
563
563
563
563
563
564
564
564
565
565
565
565
565
565
566
569
570
570
571
572
572
573
573
573
573
573
572
572
571
571
571
570
570
570
569
568
567
567
567
568
569
569
569
570
572
573
573
573
573
574
574
575
575
576
576
576
577
577
578
578
579
581
581
582
582
583
584
584
585
585
586
587
588
589
589
590
590
591
593
594
598
600
601
602
604
605
607
610
611
611
611
611
611
611
611
611
611
611
611
611
610
610
609
609
608
608
607
607
606
606
606
605
605
605
603
603
603
596
595
594
593
592
591
590
587
587
587
587
587
587
587
587
587
587
587
587
589
590
590
590
591
593
594
594
595
596
596
596
597
597
597
595
594
593
591
589
589
589
588
587
586
585
585
584
584
584
584
583
583
583
581
581
577
575
575
575
575
576
576
576
577
577
578
578
579
579
578
578
577
576
575
574
577
579
580
582
583
584
585
587
588
589
591
592
592
593
593
594
594
594
595
595
595
595
596
596
597
599
600
601
601
602
602
603
604
604
605
606
606
606
606
606
606
606
606
606
605
605
605
605
605
604
604
604
603
603
603
603
602
602
602
602
602
602
602
602
602
601
601
599
599
597
596
595
594
593
593
591
590
588
587
587
586
586
586
585
585
585
585
585
584
584
584
584
584
584
584
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
583
582
580
579
578
573
573
572
571
571
569
569
569
569
568
568
568
568
568
568
568
569
569
569
569
569
569
569
568
568
567
567
567
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
566
565
565
565
565
565
565
565
564
564
564
564
564
564
564
564
564
564
564
564
564
564
564
565
565
566
566
567
567
567
567
567
567
567
568
569
570
570
570
571
572
574
575
576
577
580
581
582
582
583
583
583
584
584
584
583
583
583
582
582
582
581
581
580
580
580
579
579
579
578
578
578
578
577
577
577
577
577
577
577
577
577
577
577
577
577
577
577
577
577
577
577
576
576
575
575
574
574
574
573
573
573
573
572
571
571
571
571
571
571
571
571
571
571
571
571
572
572
572
572
572
572
572
572
572
573
573
573
573
573
574
574
576
576
578
578
578
581
583
584
585
587
590
590
592
595
600
602
604
605
607
608
612
617
619
619
622
622
622
623
623
624
625
629
629
632
632
633
634
635
637
638
639
640
640
641
641
641
642
644
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
646
647
647
647
647
647
647
647
647
648
648
648
648
648
648
648
648
648
648
648
648
648
648
648
650
651
652
658
659
660
661
662
663
665
666
667
669
670
671
674
676
677
679
680
682
683
684
685
687
689
690
690
692
692
693
693
694
695
696
699
700
703
708
712
719
721
724
727
729
730
731
732
736
738
740
745
745
746
746
747
748
750
751
751
752
756
758
759
761
762
764
765
766
768
769
769
770
772
774
776
778
779
779
780
781
781
782
784
785
786
788
790
793
796
797
799
802
804
805
814
819
821
825
827
829
838
843
844
845
847
849
851
854
857
858
859
861
864
866
867
867
881
882
886
887
896
900
902
903
904
904
904
904
904
904
904
904
905
905
905
905
905
905
905
906
906
906
906
904
904
902
901
900
899
898
895
894
892
891
891
890
888
887
881
876
874
872
867
864
855
853
841
839
837
837
835
827
825
823
815
814
813
808
807
806
805
805
804
804
803
796
794
790
789
789
788
787
787
786
785
781
780
779
778
776
769
766
762
758
756
749
748
747
746
745
744
744
743
742
739
738
737
736
735
734
727
723
714
710
704
702
701
699
684
677
675
671
665
659
651
646
642
637
628
625
617
610
608
607
606
605
605
604
603
602
600
595
594
594
592
592
592
591
590
590
589
590
590
591
591
591
593
593
593
593
593
593
593
593
594
594
595
595
595
596
596
597
597
598
599
599
600
600
600
601
601
601
601
602
602
602
603
603
603
603
603
603
603
603
603
603
603
603
603
603
603
604
604
605
607
613
614
622
623
632
651
653
656
659
671
673
675
676
682
683
684
686
695
699
700
700
700
701
702
703
703
704
704
705
705
703
697
692
689
686
681
676
674
672
667
664
661
656
655
654
651
645
644
642
642
641
640
640
638
636
633
633
632
629
628
625
624
623
622
622
618
617
616
616
616
617
617
617
618
618
618
619
620
623
624
624
624
625
627
628
628
628
632
633
634
634
635
636
636
637
637
637
637
638
638
641
643
644
645
647
649
650
651
651
652
655
656
661
662
664
667
669
670
672
676
676
676
677
677
677
678
678
682
686
689
691
698
700
701
703
705
711
713
715
718
720
722
725
727
730
732
735
738
740
742
744
746
749
756
758
760
770
772
779
782
785
785
782
776
775
770
768
766
760
757
751
749
751
756
761
769
771
772
773
775
780
781
782
785
788
791
794
799
806
809
813
818
823
828
831
839
843
846
848
851
852
854
855
856
857
858
861
863
864
865
866
867
868
869
870
870
871
872
873
878
881
882
887
888
889
891
892
893
901
902
903
904
905
907
908
909
914
916
918
919
921
927
929
932
934
946
950
951
952
953
953
954
956
965
967
967
968
969
970
971
973
975
981
985
990
991
993
994
997
1001
1002
1004
1005
1010
1012
1013
1015
1017
1026
1032
1037
1040
1043
1047
1047
1048
1048
1049
1049
1050
1050
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1051
1054
1055
1055
1059
1059
1060
1062
1063
1065
1068
1072
1073
1078
1081
1082
1085
1089
1090
1091
1094
1098
1100
1102
1104
1106
1108
1111
1113
1114
1117
1120
1121
1123
1128
1130
1133
1136
1137
1137
1138
1139
1140
1140
1142
1144
1146
1146
1147
1147
1148
1148
1149
1149
1150
1160
1165
1169
1174
1176
1179
1181
1191
1193
1196
1199
1203
1206
1209
1210
1215
1220
1219
1218
1217
1216
1215
1214
1212
1210
1209
1210
1215
1218
1220
1225
1229
1234
1236
1239
1242
1246
1249
1253
1258
1261
1267
1272
1276
1281
1292
1292
1295
1300
1301
1303
1308
1309
1310
1321
1325
1327
1329
1331
1333
1336
1338
1340
1341
1342
1343
1345
1348
1350
1357
1358
1359
1363
1364
1365
1366
1367
1369
1375
1377
1378
1382
1383
1384
1385
1386
1388
1394
1397
1398
1399
1401
1403
1406
1407
1407
1407
1408
1408
1410
1410
1411
1413
1419
1426
1429
1430
1431
1432
1433
1434
1441
1447
1449
1451
1453
1454
1456
1458
1459
1463
1465
1476
1480
1484
1489
1493
1496
1503
1521
1582
1601
1628
1601
1603
1604
1605
1606
1608
1609
1609
1612
1619
1621
1622
1623
1625
1626
1628
1635
1638
1641
1643
1649
1651
1653
1654
1657
1660
1668
1673
1676
1679
1686
1690
1691
1691
1692
1693
1694
1695
1697
1700
1708
1710
1712
1714
1716
1719
1721
1726
1728
1730
1731
1732
1734
1736
1740
1741
1744
1748
1751
1753
1757
1759
1761
1762
1767
1769
1771
1773
1773
1773
1772
1772
1771
1771
1771
1770
1769
1769
1769
1769
1769
1769
1769
1770
1770
1770
1770
1770
1771
1771
1771
1771
1771
1771
1771
1771
1771
1772
1772
1772
1772
1772
1772
1773
1773
1773
1773
1773
1773
1774
1777
1779
1781
1786
1788
1790
1794
1797
1799
1802
1805
1812
1817
1820
1820
1822
1825
1829
1832
1835
1838
1841
1846
1848
1850
1852
1855
1857
1858
1859
1859
1860
1861
1868
1870
1873
1876
1879
1883
1887
1889
1892
1894
1896
1896
1897
1898
1898
1901
1911
1912
1913
1914
1914
1916
1917
1917
1919
1922
1924
1930
1932
1934
1939
1942
1951
1956
1962
1966
1970
1974
1977
1979
1981
1982
1983
1984
1985
1990
2000
2006
2008
2010
2014
2016
2018
2030
2036
2037
2038
2038
2039
2040
2041
2046
2051
2057
2062
2064
2067
2068
2071
2072
2074
2084
2085
2086
2086
2087
2088
2090
2093
2102
2103
2106
2108
2110
2126
2127
2128
2128
2129
2129
2130
2133
2134
2136
2137
2140
2142
2143
2146
2149
2151
2155
2157
2159
2159
2160
2160
2160
2160
2160
2161
2161
2162
2162
2162
2163
2163
2163
2162
2162
2162
2160
2160
2159
2158
2157
2156
2156
2154
2153
2153
2152
2147
2145
2141
2139
2138
2137
2135
2133
2123
2120
2118
2113
2112
2109
2095
2089
2083
2072
2066
2058
2053
2050
2047
2039
2031
2025
2016
2010
2000
1996
1990
1988
1982
1977
1976
1972
1965
1954
1949
1942
1938
1935
1934
1931
1929
1926
1925
1924
1920
1915
1913
1909
1907
1905
1903
1899
1894
1888
1880
1878
1871
1870
1868
1862
1859
1855
1848
1848
1842
1836
1834
1831
1829
1827
1823
1820
1818
1816
1815
1811
1808
1803
1803
1802
1801
1795
1792
1792
1791
1787
1786
1783
1780
1780
1777
1774
1773
1772
1770
1769
1769
1769
1769
1768
1767
1766
1766
1765
1765
1765
1764
1764
1764
1763
1763
1763
1762
1762
1762
1761
1761
1761
1760
1755
1754
1750
1749
1748
1742
1740
1726
1725
1722
1722
1721
1715
1714
1713
1712
1707
1706
1706
1705
1704
1699
1698
1697
1696
1694
1691
1690
1683
1676
1673
1672
1672
1671
1671
1670
1667
1663
1660
1659
1659
1658
1657
1657
1653
1652
1646
1644
1643
1633
1630
1624
1621
1617
1613
1609
1601
1600
1598
1598
1586
1585
1584
1581
1580
1579
1578
1575
1571
1570
1565
1564
1563
1557
1556
1555
1554
1554
1554
1554
1553
1550
1550
1549
1549
1548
1545
1544
1543
1543
1539
1539
1538
1538
1534
1533
1532
1531
1513
1512
1510
1508
1505
1503
1501
1496
1494
1491
1481
1476
1474
1474
1473
1472
1472
1472
1471
1471
1471
1470
1470
1468
1467
1466
1458
1446
1422
1420
1418
1412
1411
1407
1402
1395
1385
1380
1377
1370
1369
1369
1369
1368
1367
1367
1367
1367
1366
1365
1365
1364
1363
1363
1359
1359
1359
1358
1356
1356
1356
1356
1356
1356
1356
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1355
1356
1356
1356
1356
1356
1356
1356
1356
1356
1356
1357
1357
1358
1359
1359
1361
1362
1362
1364
1366
1367
1368
1369
1370
1373
1374
1375
1378
1379
1380
1381
1383
1387
1391
1393
1394
1397
1397
1398
1398
1399
1400
1400
1401
1402
1407
1411
1413
1416
1417
1418
1421
1422
1423
1425
1430
1432
1433
1435
1437
1438
1444
1445
1445
1446
1447
1447
1451
1451
1454
1455
1456
1457
1458
1461
1461
1468
1473
1474
1475
1476
1479
1482
1483
1485
1489
1499
1500
1501
1503
1506
1509
1521
1526
1528
1533
1538
1539
1540
1544
1544
1545
1549
1549
1550
1555
1559
1560
1562
1564
1569
1570
1571
1572
1573
1575
1587
1609
1612
1618
1624
1627
1634
1639
1646
1647
1647
1647
1647
1647
1647
1650
1657
1666
1667
1668
1672
1673
1675
1683
1686
1687
1691
1693
1694
1698
1704
1716
1724
1729
1749
1758
1769
1770
1773
1774
1774
1775
1783
1784
1789
1791
1794
1796
1800
1807
1811
1816
1819
1823
1826
1840
1846
1852
1854
1859
1860
1864
1866
1870
1875
1878
1881
1883
1886
1888
1893
1898
1901
1903
1905
1907
1909
1912
1913
1917
1918
1920
1921
1922
1923
1927
1928
1929
1930
1934
1935
1936
1939
1942
1954
1956
1957
1961
1963
1967
1969
1971
1973
1975
1989
1991
1993
1995
1997
2000
2002
2004
2006
2009
2010
2011
2012
2012
2013
2019
2021
2023
2024
2031
2033
2034
2042
2047
2050
2052
2054
2056
2065
2069
2073
2081
2087
2088
2090
2094
2094
2095
2096
2097
2100
2103
2111
2117
2121
2125
2128
2129
2130
2131
2131
2132
2132
2136
2138
2139
2141
2150
2152
2155
2162
2164
2166
2168
2169
2173
2175
2175
2176
2176
2177
2177
2178
2179
2181
2182
2185
2186
2186
2187
2188
2195
2197
2199
2200
2200
2200
2201
2201
2202
2204
2206
2208
2209
2210
2210
2211
2211
2214
2217
2219
2224
2226
2227
2230
2231
2232
2232
2233
2234
2235
2240
2252
2264
2265
2267
2274
2276
2278
2284
2288
2299
2306
2308
2310
2311
2318
2319
2320
2320
2321
2321
2322
2326
2327
2329
2332
2347
2351
2355
2358
2359
2361
2363
2365
2373
2395
2400
2402
2405
2414
2422
2423
2425
2427
2431
2433
2437
2439
2440
2441
2441
2442
2443
2443
2446
2448
2452
2454
2457
2460
2462
2464
2465
2468
2472
2472
2472
2474
2474
2474
2475
2475
2475
2475
2475
2475
2476
2468
2465
2462
2451
2449
2442
2441
2440
2437
2433
2431
2429
2419
2416
2413
2410
2394
2393
2393
2392
2392
2390
2386
2383
2380
2376
2374
2373
2373
2373
2372
2372
2368
2367
2366
2365
2363
2361
2357
2357
2356
2356
2355
2354
2352
2350
2347
2339
2337
2335
2333
2329
2322
2321
2321
2320
2320
2314
2309
2287
2285
2281
2278
2275
2266
2263
2260
2258
2255
2253
2250
2248
2246
2244
2243
2239
2236
2231
2227
2223
2219
2208
2203
2200
2183
2176
2173
2167
2164
2160
2156
2144
2139
2134
2129
2120
2117
2098
2088
2086
2083
2079
2078
2077
2076
2076
2074
2068
2058
2047
2041
2038
2032
2027
2024
2021
2018
2016
2015
2014
2013
2009
2002
1997
1993
1990
1986
1986
1985
1984
1984
1983
1982
1979
1977
1975
1973
1971
1969
1967
1965
1961
1957
1953
1949
1944
1932
1930
1926
1923
1921
1914
1911
1909
1891
1888
1885
1880
1876
1870
1848
1846
1843
1840
1837
1833
1823
1818
1814
1809
1808
1808
1807
1805
1802
1795
1794
1793
1792
1787
1784
1777
1774
1766
1762
1759
1757
1751
1751
1746
1743
1726
1724
1709
1707
1705
1702
1694
1689
1686
1684
1682
1677
1674
1671
1669
1665
1658
1655
1652
1649
1646
1638
1636
1634
1633
1631
1630
1626
1623
1622
1621
1620
1618
1608
1606
1604
1600
1598
1595
1593
1590
1587
1582
1580
1576
1568
1562
1553
1550
1517
1511
1509
1508
1506
1503
1500
1496
1493
1491
1489
1482
1476
1467
1458
1450
1445
1439
1433
1428
1423
1416
1413
1411
1410
1404
1403
1401
1397
1386
1384
1381
1377
1375
1365
1359
1357
1355
1347
1346
1345
1344
1335
1333
1330
1330
1329
1329
1327
1327
1326
1325
1323
1322
1320
1319
1318
1313
1312
1311
1310
1309
1308
1307
1307
1307
1307
1307
1307
1307
1307
1307
1307
1306
1302
1301
1301
1300
1299
1298
1297
1296
1294
1293
1292
1290
1289
1289
1289
1288
1288
1288
1287
1287
1286
1286
1286
1286
1285
1285
1285
1284
1283
1282
1282
1282
1281
1281
1280
1279
1279
1277
1276
1275
1275
1274
1273
1273
1269
1268
1267
1264
1263
1263
1261
1255
1249
1248
1247
1246
1242
1241
1240
1239
1237
1233
1231
1230
1229
1228
1228
1225
1224
1222
1221
1220
1220
1219
1217
1211
1203
1201
1199
1197
1195
1193
1191
1187
1186
1184
1178
1177
1176
1173
1168
1167
1166
1165
1163
1161
1158
1158
1156
1156
1156
1156
1156
1156
1156
1156
1156
1156
1156
1156
1157
1157
1157
1157
1157
1157
1157
1157
1157
1156
1156
1156
1155
1155
1154
1153
1153
1152
1151
1150
1150
1150
1151
1151
1152
1152
1153
1155
1158
1158
1158
1155
1151
1150
1148
1147
1147
1145
1141
1136
1134
1133
1132
1129
1128
1128
1127
1126
1124
1120
1119
1119
1118
1118
1118
1117
1117
1116
1116
1115
1114
1113
1112
1110
1110
1108
1101
1094
1091
1090
1086
1078
1076
1075
1074
1073
1072
1071
1069
1067
1066
1065
1065
1064
1059
1057
1057
1056
1055
1053
1049
1048
1046
1042
1040
1037
1036
1036
1035
1034
1033
1032
1029
1024
1021
1018
1018
1017
1016
1015
1013
1013
1012
994
993
992
992
992
991
991
991
990
988
985
983
981
979
979
978
977
977
977
976
976
975
973
973
972
971
972
973
973
976
980
980
981
981
982
982
983
984
984
984
985
985
985
985
985
985
985
984
984
982
981
980
980
980
978
977
977
976
975
974
973
972
972
971
971
971
968
968
967
967
959
953
951
950
950
949
948
947
946
945
942
941
943
944
944
944
945
945
945
946
946
946
947
947
949
949
949
949
949
949
948
947
945
942
935
926
919
915
905
895
887
883
879
879
878
878
877
876
871
871
870
870
869
866
862
858
849
848
847
846
844
842
841
837
833
832
829
827
826
824
822
821
818
817
816
807
803
795
788
785
781
778
776
776
773
772
770
764
763
762
759
757
756
755
754
749
748
747
747
746
745
744
742
741
737
737
736
730
718
716
710
710
709
708
708
707
706
705
703
703
701
701
700
700
699
697
697
696
696
695
695
693
693
692
692
684
684
684
682
681
680
678
677
676
676
675
672
672
671
671
670
669
669
668
668
668
667
667
666
666
664
660
658
650
649
649
649
647
645
644
642
642
642
642
642
641
641
639
639
639
638
637
636
635
631
629
626
626
625
622
622
622
622
623
621
618
617
617
617
617
617
617
616
616
616
616
616
616
616
616
616
615
614
614
613
613
613
613
613
612
612
612
612
610
610
609
607
606
604
600
596
592
590
586
575
575
573
572
571
570
569
567
564
559
555
550
547
540
539
535
532
526
524
521
517
515
506
493
489
487
486
485
484
484
483
482
481
481
481
481
481
480
480
479
478
476
476
476
476
476
473
471
467
466
465
460
459
453
451
448
446
444
441
440
436
434
423
421
417
412
409
408
406
402
398
397
395
394
394
394
394
394
394
394
394
394
394
393
391
389
389
388
387
384
383
381
379
375
372
368
366
364
362
359
352
352
350
350
350
350
349
349
348
348
348
347
347
347
346
343
340
339
337
334
331
326
324
323
320
320
321
321
321
321
321
321
321
322
323
323
323
324
325
325
325
326
326
326
326
326
326
326
326
326
326
325
324
323
323
322
321
321
320
318
317
316
315
314
314
312
312
311
310
309
309
309
307
306
306
304
303
303
302
302
301
301
301
301
301
301
300
300
300
300
300
299
299
299
299
298
297
296
296
294
292
292
292
291
291
291
291
291
291
291
292
292
292
293
293
293
294
294
294
295
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
295
293
293
293
293
293
292
290
290
290
290
290
290
290
289
289
289
289
289
288
288
288
288
288
288
288
288
289
290
290
290
290
290
284
282
282
280
279
279
278
278
278
278
278
278
274
273
270
269
269
269
269
269
269
269
269
269
269
269
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
268
267
267
267
267
267
267
266
264
262
262
261
261
261
261
261
261
261
261
261
261
261
260
260
259
259
259
258
258
257
257
256
256
256
256
256
255
253
252
252
252
252
252
251
251
251
251
251
251
251
252
254
256
257
258
258
258
259
259
259
259
259
259
258
258
258
257
256
256
255
252
252
250
250
249
249
249
249
250
249
247
247
246
246
247
248
248
248
248
248
247
247
247
246
246
245
245
245
245
245
245
244
243
243
242
240
240
240
240
240
240
240
240
240
240
240
239
239
239
238
238
237
237
237
237
237
237
237
237
238
238
238
238
238
238
238
238
238
238
238
238
238
238
238
237
236
236
235
235
235
235
234
235
235
237
237
238
239
240
241
241
243
243
242
241
240
239
238
238
238
237
236
235
235
234
234
234
234
234
234
234
233
233
233
232
232
232
232
231
231
231
231
231
231
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
230
229
229
229
228
228
228
227
227
227
227
227
225
224
224
224
224
224
224
224
224
224
224
224
224
223
222
220
220
220
220
220
220
220
220
220
220
219
219
219
219
219
218
218
218
218
218
218
218
218
217
216
215
215
214
213
213
212
210
209
209
209
209
209
208
205
205
206
208
209
210
210
211
211
211
212
212
212
213
213
215
215
215
216
216
216
216
216
216
217
217
222
224
226
232
235
239
241
243
244
247
248
250
251
252
252
256
256
257
261
265
265
266
267
269
272
275
277
279
280
280
281
282
287
291
292
292
293
293
294
295
304
306
308
310
313
316
321
324
338
341
360
365
368
374
377
380
381
383
384
385
386
387
387
388
388
389
390
391
392
396
398
400
405
408
415
416
418
419
420
421
422
422
423
424
426
427
429
431
433
441
451
455
456
458
479
485
491
495
497
500
504
510
518
528
530
532
534
537
545
548
548
547
543
543
544
544
545
545
546
546
548
549
550
550
550
551
551
552
552
553
552
551
549
523
517
512
501
499
498
497
496
496
496
495
495
494
494
494
493
493
492
491
490
489
488
488
486
485
481
481
481
481
481
481
481
481
481
480
480
480
480
480
480
480
477
473
472
471
470
470
469
469
469
468
467
467
466
466
464
465
467
469
469
470
468
467
466
465
464
463
462
462
461
460
460
459
459
458
458
458
458
458
458
458
458
458
458
458
458
458
458
458
458
458
457
455
455
454
453
452
450
449
445
444
444
444
443
443
443
443
442
442
442
441
441
441
440
440
439
439
439
439
438
438
438
435
434
433
432
430
428
426
425
420
420
420
420
420
420
420
420
420
420
420
420
420
420
420
420
420
414
405
403
405
408
408
408
407
407
407
407
407
407
407
407
407
407
406
406
406
405
402
396
396
396
396
395
395
395
385
384
383
382
381
380
378
376
375
375
374
373
372
371
369
368
367
366
366
364
363
362
362
361
359
359
359
359
359
359
359
359
356
354
351
351
350
350
349
348
347
346
345
345
343
342
341
340
340
340
340
340
340
340
340
340
340
340
340
340
340
340
340
338
336
335
334
333
333
331
330
327
324
323
323
321
320
320
320
321
321
321
321
321
321
321
320
319
316
315
315
315
314
314
313
313
313
313
313
313
317
318
318
318
318
319
321
322
322
323
324
324
324
325
328
328
332
335
337
338
339
339
341
345
345
349
350
354
355
356
359
363
365
367
369
370
371
372
374
375
375
376
378
379
379
380
381
381
381
381
382
383
383
386
386
386
387
388
388
388
388
388
388
388
388
388
388
388
386
385
383
381
378
377
375
373
372
372
371
371
369
368
365
364
363
361
361
361
361
361
361
360
358
357
356
355
352
352
349
347
347
346
345
342
340
338
336
336
336
335
335
334
333
333
332
331
331
331
331
331
330
330
330
330
330
330
330
329
329
328
324
324
317
312
310
309
308
307
297
294
291
290
286
285
283
282
280
280
280
279
279
279
279
279
278
278
278
278
278
278
277
277
277
277
277
276
276
276
276
276
274
273
273
273
273
274
274
274
275
276
277
278
282
284
286
287
287
287
291
293
294
297
298
299
299
300
303
304
305
306
306
307
309
311
314
314
314
315
316
316
317
319
322
323
325
328
334
336
336
337
337
342
343
343
346
351
353
354
355
356
361
363
365
366
367
370
373
374
376
377
379
380
381
383
382
380
378
375
371
370
352
347
340
337
335
332
328
324
322
316
315
314
314
313
313
312
311
309
306
305
304
304
296
293
293
293
293
292
291
290
290
289
288
285
283
283
282
289
294
302
304
337
367
445
428
409
393
390
382
374
372
344
318
297
276
276
276
276
276
276
276
276
276
276
276
276
276
276
276
277
277
277
277
277
277
277
277
277
277
276
276
276
276
276
276
276
276
276
276
275
275
275
275
275
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
275
275
275
275
275
275
275
275
276
277
277
280
280
282
283
284
285
285
287
288
288
289
289
289
290
291
291
291
292
292
292
292
291
289
289
288
287
287
286
286
284
282
281
280
280
279
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
279
279
280
281
282
282
283
284
286
286
290
295
298
299
301
301
300
300
300
299
297
296
294
292
290
290
288
288
287
286
286
287
291
294
300
301
302
308
310
311
312
313
314
315
315
316
318
320
325
325
326
330
331
332
333
333
334
336
340
344
346
348
350
352
354
356
359
360
361
361
364
366
368
369
370
367
370
374
382
380
380
379
379
378
377
377
376
376
375
374
372
372
370
361
359
356
355
354
354
353
353
352
351
350
347
345
338
335
332
323
322
321
320
319
317
314
312
308
304
303
302
300
300
299
299
298
298
297
296
295
295
295
294
294
293
292
292
292
292
292
290
289
286
284
283
280
280
279
279
278
277
277
270
264
264
263
262
259
258
257
240
239
238
235
235
233
233
231
229
227
226
226
223
222
219
217
215
214
212
211
211
211
211
210
210
210
209
209
209
209
208
208
210
210
211
212
215
216
216
216
218
218
219
219
219
218
217
217
216
216
215
214
214
213
211
210
209
209
209
207
207
206
206
206
206
205
205
204
204
203
203
203
203
203
203
203
203
203
203
203
203
203
204
204
204
206
206
206
206
206
205
205
205
205
205
205
205
205
205
205
205
205
205
205
205
206
206
206
206
207
207
207
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
208
209
209
210
210
211
211
211
211
211
211
211
211
211
211
210
210
210
210
210
210
210
211
211
213
213
214
213
213
214
219
217
216
214
211
207
206
203
203
203
203
203
203
203
203
203
203
203
204
205
208
209
210
212
213
214
214
214
214
215
215
215
215
215
215
216
216
216
216
216
215
215
214
214
214
214
214
213
212
212
209
209
209
210
211
212
214
216
216
217
218
218
218
217
217
216
216
215
214
214
213
213
212
212
212
212
212
213
213
214
215
216
217
217
217
217
216
215
215
215
214
213
213
213
213
213
213
214
214
214
215
216
216
217
219
220
221
222
223
224
225
221
215
213
210
207
206
206
205
203
201
201
200
200
200
200
200
200
200
200
200
200
200
200
211
216
218
219
219
219
219
220
221
222
222
222
222
222
222
222
222
222
221
219
219
216
215
214
214
213
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
212
212
213
213
214
214
215
216
216
216
217
218
220
221
227
230
234
236
245
248
252
256
226
217
214
213
213
212
210
208
207
207
207
207
207
207
207
208
208
208
208
208
208
206
206
206
206
206
206
207
208
209
209
210
210
211
212
212
212
212
213
213
213
213
213
214
214
214
215
215
215
215
215
213
213
212
211
210
208
208
207
206
205
205
204
204
202
201
201
200
202
204
205
205
206
206
207
208
209
209
210
211
212
212
212
212
212
212
212
212
212
211
211
211
210
210
209
209
208
208
208
208
209
210
211
212
212
212
213
213
214
215
215
216
216
216
216
217
217
217
217
217
216
216
215
214
211
210
209
208
208
208
208
209
209
210
210
210
211
211
212
213
214
214
214
214
215
215
215
216
217
217
218
218
218
218
218
217
217
217
217
216
216
216
215
215
214
212
211
211
209
209
208
208
208
207
206
209
214
218
220
238
243
248
251
274
302
309
314
325
326
330
332
336
343
350
357
359
362
364
368
371
372
374
377
382
386
388
391
392
396
398
403
405
405
405
405
405
405
405
405
405
405
406
406
407
407
407
408
411
412
414
419
424
429
432
437
444
453
451
450
448
447
446
445
444
442
440
442
443
446
450
456
460
464
468
469
471
472
474
475
480
482
482
483
483
483
484
487
488
489
492
494
497
498
498
498
501
507
509
512
512
512
512
513
517
518
519
519
519
520
520
522
523
525
526
530
531
532
532
533
540
541
541
542
545
547
552
555
558
563
566
579
582
583
585
587
588
590
593
596
598
601
607
615
622
629
637
642
648
657
659
660
661
661
664
666
668
669
671
673
679
685
686
686
699
702
715
716
717
720
724
726
730
735
739
747
751
755
757
762
767
771
773
775
778
780
784
785
788
794
800
807
807
809
812
815
817
818
818
820
821
821
822
822
822
823
823
823
823
823
823
824
824
824
824
825
825
825
825
825
824
812
809
804
799
797
793
792
790
790
788
788
786
784
783
780
777
765
756
750
736
734
731
724
715
708
696
689
678
665
661
654
653
651
644
635
634
631
622
614
609
590
578
559
553
550
550
548
546
542
534
530
528
527
525
522
520
515
513
512
511
498
492
491
491
484
480
479
477
475
474
474
471
469
463
461
460
460
460
456
450
444
440
440
440
439
435
433
429
429
427
424
422
422
421
421
418
410
407
393
388
387
385
376
372
368
365
360
357
346
343
340
338
332
331
329
328
327
327
326
324
323
321
320
319
318
317
316
315
312
309
306
305
305
304
303
302
302
300
299
299
295
294
293
291
290
289
286
281
277
269
265
263
262
260
255
247
244
243
235
233
230
228
226
225
223
222
220
218
217
217
217
216
216
216
215
215
215
214
214
214
214
212
211
211
210
209
208
206
206
206
206
206
206
206
205
205
205
204
204
204
204
204
203
203
203
203
202
202
202
202
202
202
202
203
203
203
204
204
205
209
209
211
211
211
211
210
210
209
209
209
209
208
208
208
207
207
207
207
207
207
207
207
208
208
209
209
209
210
210
210
209
209
209
209
208
208
208
208
207
207
206
207
209
210
210
211
212
213
213
213
213
213
212
212
212
212
212
212
212
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
212
214
214
214
214
214
214
214
214
214
214