184
184
184
186
189
189
187
186
185
184
183
182
182
182
182
183
184
184
185
185
187
187
187
187
187
187
187
186
186
186
186
186
186
187
187
187
188
187
186
186
186
186
186
186
187
187
187
187
187
187
187
187
187
192
192
192
193
193
193
193
193
193
193
193
193
193
193
193
193
193
199
197
197
199
199
200
207
207
207
206
206
206
206
205
205
205
205
205
205
208
209
209
210
213
213
214
218
221
222
219
217
214
214
215
216
223
225
227
226
224
221
218
218
217
219
219
219
219
219
220
220
221
224
224
224
224
226
227
227
228
229
229
229
229
230
230
229
229
227
229
229
230
230
229
229
229
228
228
227
227
228
228
230
230
233
236
238
237
236
235
234
232
232
235
235
237
239
238
237
237
237
237
237
241
242
243
243
243
242
242
242
243
243
243
243
243
244
244
244
244
244
244
244
245
246
248
249
249
248
247
247
248
248
248
250
249
248
248
248
249
251
252
252
252
252
252
252
253
254
257
257
266
267
267
267
262
261
260
259
259
259
259
260
260
261
261
262
263
263
264
264
263
263
263
264
265
267
269
270
272
272
271
269
265
265
265
265
268
269
269
271
274
276
276
277
280
280
280
279
279
278
278
278
277
276
278
282
286
288
287
286
286
285
285
285
285
285
285
285
285
286
287
287
287
287
286
286
286
287
288
289
289
289
289
289
290
290
291
291
291
291
291
290
290
292
292
292
292
292
293
295
296
297
297
298
300
300
307
302
307
312
313
314
315
315
316
316
317
318
318
318
319
321
322
323
323
326
327
328
329
330
330
329
328
327
327
326
325
324
323
322
321
321
321
327
329
329
331
332
334
338
338
337
337
336
336
335
335
335
337
341
347
350
353
360
360
359
358
357
356
354
353
353
354
354
352
349
348
347
347
348
348
349
350
350
350
350
350
350
350
350
350
352
356
357
359
361
364
366
366
366
364
362
364
365
371
382
390
389
382
381
384
387
392
394
401
401
403
405
407
408
414
419
428
441
443
451
455
465
470
474
479
481
482
483
484
493
494
495
495
498
511
520
522
523
523
521
521
521
520
520
520
523
524
527
527
527
526
524
523
520
510
504
502
501
484
474
469
467
464
457
457
457
446
446
445
445
446
447
447
443
437
434
431
430
430
425
424
423
422
421
419
417
415
416
416
416
416
415
414
413
412
414
411
404
404
404
405
406
406
407
405
404
403
401
396
394
391
390
389
389
389
388
388
388
388
388
387
386
385
384
384
384
383
382
381
380
379
377
377
377
377
377
377
378
379
382
383
380
378
377
374
374
375
376
376
377
377
378
378
380
380
381
380
380
380
383
384
384
384
384
384
384
384
384
385
387
390
390
390
394
401
401
402
401
401
401
402
404
408
411
412
413
419
421
430
432
436
438
444
446
446
448
453
454
455
467
476
479
481
483
490
491
493
493
496
499
510
512
512
513
514
516
526
530
534
540
542
555
570
576
582
587
590
593
594
595
595
596
598
600
602
606
610
625
627
627
627
627
627
627
627
628
631
632
633
635
636
643
646
647
647
647
647
647
643
636
626
620
617
614
613
612
612
611
608
602
597
592
584
573
573
572
571
571
571
571
572
572
576
577
571
569
565
562
560
560
560
560
560
560
560
561
562
563
564
564
565
566
567
579
588
591
592
593
595
598
601
601
598
593
575
570
566
561
559
553
551
549
548
546
544
535
533
533
532
532
531
530
530
528
527
525
523
522
521
521
521
522
522
523
524
525
518
513
509
508
508
507
507
507
507
507
507
507
507
506
489
490
491
492
493
493
493
493
492
491
493
494
498
501
501
501
501
502
503
503
504
504
505
505
505
506
506
510
523
525
527
537
537
538
562
560
558
557
556
556
557
559
561
562
564
566
571
579
591
592
593
594
595
596
599
601
607
612
615
616
618
622
621
621
623
633
635
634
633
633
632
630
627
625
622
615
612
607
604
601
598
596
593
591
588
587
584
581
580
579
578
577
576
575
570
568
567
565
563
562
561
561
560
559
558
557
556
556
555
546
544
543
539
536
534
528
527
519
517
512
510
508
496
495
495
492
492
491
490
488
487
486
486
486
486
485
482
478
477
475
474
478
479
479
481
483
488
492
497
501
504
504
504
503
503
502
502
502
499
504
505
507
527
533
540
541
542
543
544
546
547
546
545
544
541
534
524
522
521
518
515
512
510
502
500
493
474
473
473
468
464
459
456
455
454
452
450
446
444
454
454
452
450
449
449
448
445
439
436
431
429
428
416
412
410
410
410
410
410
410
410
410
410
410
409
408
406
403
402
402
401
401
400
400
399
397
397
396
396
395
395
395
394
393
393
393
393
393
393
393
394
394
395
396
397
399
401
401
403
412
415
429
422
422
422
424
424
424
424
424
424
414
410
405
399
397
396
395
395
404
405
406
407
409
416
425
423
421
419
416
414
405
405
406
407
408
416
426
425
424
417
417
417
417
417
417
415
414
413
411
418
418
418
418
418
418
418
419
419
419
418
418
418
418
418
418
419
419
421
423
424
425
426
428
436
435
435
432
431
431
432
432
433
433
434
435
435
435
435
436
440
443
446
450
461
464
462
458
457
456
457
459
459
461
465
471
472
469
466
462
460
458
455
453
451
450
449
448
446
446
446
446
446
448
448
448
448
448
448
448
448
448
448
449
449
450
450
451
452
452
452
452
453
453
453
453
453
455
456
457
458
458
458
458
458
458
459
460
461
462
462
464
464
465
466
468
468
469
469
469
469
469
469
469
469
468
468
468
468
468
469
471
474
478
478
479
479
479
481
491
493
495
496
497
497
498
500
501
501
501
502
502
503
503
504
504
505
506
507
507
507
508
508
509
509
510
510
510
511
511
512
512
512
512
512
512
514
514
515
515
516
516
516
516
514
513
509
507
506
505
505
506
507
507
507
507
508
509
509
508
508
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
511
516
522
523
524
525
529
531
528
526
525
522
515
513
511
511
511
512
512
512
512
513
512
512
510
509
509
508
508
508
508
508
507
507
507
507
507
507
507
507
507
507
507
507
507
507
507
508
508
508
508
508
508
509
509
510
513
514
514
514
514
514
514
514
514
514
514
514
515
515
516
516
517
517
517
517
517
517
517
517
517
517
518
518
519
519
519
519
520
520
520
520
520
520
520
520
520
520
522
523
527
530
537
539
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
540
541
541
542
542
543
544
545
546
548
550
550
550
550
550
550
550
549
549
549
550
551
555
557
560
560
560
560
560
560
569
572
573
572
571
570
570
570
573
575
576
577
578
578
578
579
581
582
590
592
592
593
594
595
596
597
598
599
599
599
599
600
600
602
602
604
605
605
606
607
610
612
617
618
620
620
620
620
620
620
620
620
624
626
630
633
634
636
637
638
639
640
640
640
640
641
643
648
651
662
669
670
672
672
679
679
679
679
679
680
684
689
693
693
695
695
695
698
699
701
705
706
707
708
711
711
711
710
710
710
710
710
710
710
710
710
710
710
710
710
710
714
717
734
734
737
738
741
752
753
753
754
756
757
759
761
763
764
766
767
769
774
780
785
790
794
798
802
805
803
802
801
800
800
799
798
794
791
790
788
782
773
769
766
760
758
755
755
754
753
751
750
750
750
750
749
748
746
746
744
742
742
741
740
740
740
740
740
740
740
740
739
739
739
739
739
739
737
736
734
732
731
730
728
726
726
725
725
726
729
728
728
727
724
722
721
721
724
733
734
738
740
740
740
740
744
746
749
754
755
756
758
764
772
774
775
775
776
779
781
783
787
789
791
792
793
796
798
798
801
802
807
811
813
818
820
821
824
818
812
810
807
795
787
783
779
776
774
772
765
762
758
758
757
757
757
757
756
753
750
747
745
744
742
738
738
737
737
737
737
737
736
735
734
733
731
730
729
729
727
726
725
722
719
712
703
700
699
697
699
700
705
706
706
706
706
706
705
704
704
700
696
693
691
688
683
680
670
670
670
670
670
670
671
671
671
670
668
668
668
667
667
667
668
668
668
669
669
669
670
670
670
670
670
670
670
670
670
670
669
669
669
669
668
668
668
666
661
652
649
647
639
635
627
622
618
614
611
610
606
603
601
597
592
590
587
581
581
583
585
586
588
589
589
589
585
582
576
573
566
559
558
555
551
549
541
540
540
540
540
540
540
540
540
540
541
541
542
542
542
543
544
544
544
544
544
543
542
541
540
540
540
540
540
540
540
540
540
540
540
540
540
542
542
543
545
546
562
582
588
593
595
596
598
598
597
595
594
594
593
591
590
589
586
584
578
561
553
541
541
541
545
551
554
555
562
565
565
563
562
561
560
563
564
568
570
572
571
569
569
567
567
566
565
564
563
561
560
560
560
560
561
562
563
563
564
565
567
567
568
568
568
568
569
573
574
576
571
567
561
562
562
563
563
564
567
568
569
569
570
572
573
573
573
574
574
574
575
577
578
578
578
579
580
587
588
594
596
598
599
599
599
599
599
599
600
600
600
600
602
604
607
608
608
608
608
608
608
608
608
608
608
609
609
610
611
613
614
616
617
619
620
620
620
620
620
620
626
630
636
639
639
641
647
649
651
650
650
651
656
657
659
660
661
662
666
669
672
679
679
679
679
679
679
679
679
679
682
683
686
687
687
687
687
688
689
690
690
690
691
692
692
692
692
692
693
693
694
694
695
695
695
696
697
697
699
699
699
700
701
701
701
702
702
702
707
709
718
718
718
719
719
719
719
720
720
720
720
720
720
720
720
720
720
720
720
720
720
720
722
726
731
732
733
735
735
738
739
740
740
740
740
740
740
741
741
742
744
745
746
748
749
754
756
758
759
761
765
766
768
770
772
774
777
779
780
782
783
785
786
787
790
792
795
798
798
798
799
799
800
800
805
810
814
815
816
816
817
817
818
818
819
820
821
825
825
827
828
838
841
847
854
858
861
872
876
878
883
885
886
888
894
900
903
905
906
908
911
913
915
924
932
935
940
947
947
948
950
952
953
954
956
957
957
957
957
958
960
960
961
961
961
963
964
965
964
961
960
960
960
960
960
960
960
959
956
955
955
955
955
955
956
955
955
954
954
954
956
957
957
958
958
957
957
956
956
956
956
957
957
956
954
952
950
947
946
944
942
935
934
933
931
929
928
927
924
921
920
921
921
922
923
923
924
924
924
925
926
926
927
927
928
928
929
930
930
930
930
931
933
934
936
937
937
939
941
942
944
947
948
946
944
943
942
939
935
928
915
911
905
903
898
895
894
892
888
885
882
880
879
879
879
879
879
879
879
878
878
878
876
870
867
863
862
860
860
860
860
858
846
845
843
842
841
840
840
840
840
840
840
840
840
840
840
840
839
839
839
839
839
839
839
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
840
839
839
839
838
836
831
831
831
832
833
835
832
831
830
827
826
826
825
825
825
825
825
825
825
825
826
826
826
826
826
826
826
826
826
826
825
824
823
822
822
821
820
819
819
819
819
819
819
819
819
819
819
819
819
817
817
817
817
817
817
817
817
817
817
817
817
817
817
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
816
811
811
810
809
809
809
809
809
809
809
809
809
809
809
809
809
809
809
809
809
817
819
822
824
824
825
823
819
818
817
817
817
816
815
812
812
812
813
814
814
814
815
815
814
812
810
809
806
806
805
805
804
803
800
799
799
799
799
799
799
798
798
798
797
797
797
796
796
796
796
796
796
796
796
796
796
796
796
796
796
796
796
796
796
796
796
795
795
795
795
794
794
794
793
793
792
792
791
791
791
791
791
792
792
792
791
791
790
788
788
788
787
787
787
786
785
784
782
782
780
780
780
780
780
780
780
780
780
780
780
780
780
779
779
779
779
779
779
779
779
779
779
779
779
780
782
786
791
799
800
801
801
803
803
804
804
805
806
807
808
811
812
812
813
813
814
816
816
819
823
826
829
832
834
835
837
837
838
840
842
846
851
859
860
861
861
862
862
862
863
863
865
865
866
866
867
868
869
873
874
874
874
874
875
876
875
875
874
873
873
873
874
875
875
876
876
876
876
876
876
876
874
871
868
866
866
866
866
866
866
865
865
864
863
861
861
860
859
858
858
857
857
856
856
856
855
855
855
855
855
854
854
854
853
851
847
845
844
843
842
842
842
841
841
840
832
827
818
810
807
801
792
791
790
789
788
787
787
786
786
785
785
784
784
783
782
782
782
782
781
781
781
780
780
780
780
780
780
780
780
780
780
780
780
780
780
780
780
779
779
779
779
779
779
778
773
772
770
769
768
767
767
767
766
766
766
766
766
767
767
767
768
769
769
769
769
769
769
769
769
769
769
770
771
771
772
773
773
773
773
769
767
766
765
765
765
765
766
766
766
766
767
767
767
767
767
767
767
767
763
760
759
758
757
757
757
756
756
756
755
755
755
755
755
755
754
754
753
753
753
753
753
753
754
754
754
755
756
756
757
757
757
757
758
758
758
758
758
758
758
758
758
758
759
759
760
760
760
760
769
772
774
776
776
776
777
776
775
774
773
773
774
776
779
781
780
777
774
771
773
773
774
774
774
774
774
774
774
774
774
774
774
774
774
775
777
777
778
778
778
778
778
778
778
778
779
779
779
779
782
785
786
789
790
791
791
792
793
793
792
791
791
790
790
791
797
798
798
797
797
796
796
796
796
796
796
795
795
794
798
798
798
798
799
804
806
806
805
805
803
804
806
807
807
807
807
807
807
807
807
807
807
807
806
805
805
805
805
805
806
806
806
808
809
811
813
814
815
815
815
813
813
814
815
817
817
817
817
817
817
817
817
817
816
819
819
823
826
828
831
835
837
839
841
841
842
845
846
848
849
849
848
848
849
851
853
854
854
855
855
855
855
862
866
875
869
866
859
859
859
860
860
860
861
867
877
882
884
888
891
889
885
880
880
880
880
880
880
880
882
888
897
899
899
899
899
900
900
900
910
915
918
921
925
928
932
937
945
952
954
957
959
960
960
963
966
969
970
978
980
982
984
986
987
988
989
993
994
994
995
995
996
1002
1026
1032
1035
1038
1046
1050
1056
1062
1069
1069
1067
1067
1072
1074
1076
1082
1102
1106
1123
1130
1132
1136
1137
1137
1137
1138
1138
1140
1142
1143
1144
1145
1148
1151
1167
1178
1178
1179
1179
1180
1182
1188
1195
1201
1207
1212
1212
1212
1214
1217
1221
1225
1228
1231
1235
1238
1241
1253
1255
1254
1254
1254
1253
1251
1244
1242
1234
1228
1218
1201
1194
1186
1174
1160
1137
1120
1100
1080
1060
1049
1041
1037
1027
1023
1019
1015
1012
1007
1001
996
990
985
984
981
977
968
966
960
956
953
939
939
940
940
940
940
940
939
937
936
934
931
931
935
937
925
925
925
926
926
926
926
925
924
922
922
921
921
921
921
921
921
918
914
913
911
911
906
905
905
905
904
904
905
910
912
914
916
915
914
907
901
900
900
900
899
899
899
899
898
893
880
880
880
880
880
880
880
880
880
881
882
882
882
880
880
880
880
880
878
871
866
863
861
860
860
860
860
859
859
858
852
850
847
843
841
840
840
840
840
840
840
840
840
840
837
836
833
831
829
826
824
823
821
820
820
820
820
820
820
820
820
819
817
813
812
811
807
809
814
819
831
812
809
802
800
799
796
790
783
780
780
780
780
785
789
790
792
793
795
797
802
812
812
812
812
812
812
811
811
811
809
808
807
805
801
800
800
800
800
799
798
798
798
798
798
797
795
794
794
793
788
787
787
789
790
792
791
788
786
785
784
783
782
781
781
780
780
777
775
774
772
771
769
768
768
767
767
766
764
763
763
762
762
761
761
760
759
759
759
758
757
756
756
755
755
754
753
752
751
751
751
751
751
751
751
754
756
756
757
757
758
760
763
767
771
771
773
779
780
782
785
790
795
797
806
809
812
814
816
817
818
819
820
821
822
823
823
824
825
827
828
830
832
849
855
865
875
879
884
889
893
896
896
897
898
899
902
910
918
924
928
931
932
933
936
938
940
942
944
946
949
951
961
964
969
982
989
994
1000
1004
1006
1008
1011
1018
1020
1021
1023
1024
1033
1037
1047
1050
1050
1050
1050
1038
1036
1033
1031
1028
1026
1022
1019
1017
1015
1011
1008
1004
1000
991
982
978
976
971
967
961
954
947
945
943
938
921
914
912
907
901
900
899
898
896
891
888
885
883
878
874
869
864
860
857
855
852
850
845
836
825
823
814
807
801
798
794
785
779
772
765
763
761
760
760
760
760
756
755
751
740
740
739
739
739
738
732
729
726
721
721
721
720
720
720
720
720
721
719
713
709
705
700
698
698
696
691
689
682
681
680
680
678
670
660
659
656
648
638
634
618
614
610
607
602
601
600
598
595
571
570
569
568
568
567
564
556
553
550
549
548
542
541
540
538
537
536
535
533
530
530
530
529
529
528
526
525
525
525
525
525
525
525
523
522
520
520
520
524
528
530
533
537
540
540
541
541
541
541
540
540
540
540
540
535
523
519
519
519
519
519
519
519
519
518
518
518
517
515
515
515
515
514
514
514
514
514
513
513
513
512
510
509
509
509
509
508
508
508
508
508
507
507
507
507
507
507
508
508
509
509
509
509
510
510
511
512
514
516
518
519
521
522
522
522
522
522
522
521
521
520
519
519
519
518
516
516
516
517
521
523
523
523
523
524
525
526
527
531
533
532
532
529
527
527
526
526
526
525