156
155
155
153
153
151
151
151
151
151
152
153
153
153
154
154
157
157
157
157
157
156
156
156
156
156
156
156
156
157
157
157
157
155
153
147
146
145
147
147
147
146
145
143
142
141
138
137
136
136
136
134
133
132
132
132
132
132
131
131
130
130
130
130
129
128
126
125
125
126
127
127
126
124
123
120
120
121
121
121
119
114
110
110
108
108
107
107
107
107
107
107
107
108
108
108
112
116
120
123
127
133
137
134
131
126
123
120
122
130
132
134
136
136
137
138
139
141
143
145
147
148
150
167
170
170
170
170
168
167
165
164
164
164
166
168
168
169
169
169
170
171
176
176
176
176
175
174
174
173
172
172
171
171
171
172
172
173
173
173
173
173
173
174
174
175
181
183
185
185
186
186
188
188
188
188
188
189
192
194
196
197
200
202
202
203
204
207
207
207
207
209
217
219
227
229
230
230
231
231
231
232
232
233
235
237
241
247
246
246
246
245
244
242
241
241
240
237
234
234
232
231
231
230
230
230
230
230
231
231
231
232
233
234
248
248
248
248
249
249
250
250
250
251
256
258
259
260
263
264
267
268
271
272
273
273
272
272
270
270
269
268
270
269
268
267
271
276
277
275
274
272
267
267
266
266
266
266
268
267
267
267
267
267
265
265
265
265
265
264
262
262
261
255
250
248
247
243
243
243
243
243
243
244
244
244
244
244
245
246
247
249
250
251
252
253
254
255
256
257
258
260
264
268
272
296
310
314
324
332
365
368
374
399
410
410
410
410
410
410
436
443
446
449
452
455
457
458
467
470
476
486
492
500
507
511
512
513
514
519
523
525
530
548
553
559
560
561
563
568
570
571
574
596
601
606
604
608
625
625
625
626
629
630
633
636
639
646
647
650
654
655
656
656
657
658
662
668
672
674
674
674
674
675
679
692
694
701
701
707
710
716
718
719
721
726
729
732
739
747
748
749
754
756
759
761
762
763
764
765
768
770
772
774
775
778
781
795
802
806
809
817
828
833
837
843
843
838
821
821
819
814
808
804
793
792
785
781
779
776
775
774
774
773
772
772
772
772
772
772
767
762
759
759
759
759
760
761
761
761
761
757
756
756
756
757
757
756
752
750
746
745
744
742
740
737
736
737
738
738
740
741
742
742
742
743
743
744
745
747
749
760
768
772
773
776
777
781
781
781
780
779
780
782
784
787
790
795
804
805
806
807
807
808
810
810
814
817
824
828
831
833
835
836
838
843
844
849
858
862
872
888
898
902
907
917
925
931
931
931
929
924
921
917
911
899
888
873
864
857
853
849
840
832
829
821
817
815
810
807
808
809
811
810
806
798
795
791
788
778
769
764
759
755
751
748
739
730
722
718
708
702
696
691
689
684
670
664
662
659
652
639
629
625
616
604
592
588
584
570
552
550
550
550
550
550
550
550
555
559
564
573
579
586
591
594
600
607
608
610
611
611
613
616
622
626
634
636
637
638
638
639
641
642
643
646
648
648
650
663
666
668
670
671
673
674
675
676
678
678
678
678
678
679
681
682
684
684
684
684
684
683
683
683
684
685
685
685
685
687
689
691
691
691
691
696
701
707
709
709
712
713
713
707
698
678
677
677
678
678
678
678
678
677
676
676
675
659
658
657
656
656
655
651
650
650
649
647
643
639
633
624
615
614
613
612
611
611
605
604
603
602
602
601
600
597
595
594
587
586
584
583
584
585
588
589
589
582
569
566
564
562
560
556
552
536
534
533
532
531
530
530
531
531
531
531
531
524
522
518
516
514
510
502
501
498
492
488
480
479
477
475
473
469
468
467
465
464
463
457
456
454
454
451
447
433
426
426
425
423
422
420
417
416
416
416
418
419
419
419
419
418
417
413
412
409
395
392
389
378
376
375
374
374
374
374
373
373
373
372
371
373
373
376
379
384
389
391
394
395
396
397
398
398
399
399
400
401
404
409
411
413
415
421
425
432
433
434
443
448
452
452
452
453
453
454
457
465
465
464
466
469
471
471
473
477
478
479
481
484
486
489
497
496
493
495
499
506
514
517
521
521
518
517
517
524
527
532
537
539
540
540
542
543
546
547
549
551
561
579
576
576
574
573
571
570
567
559
556
559
559
558
557
556
554
554
554
548
539
534
531
538
540
541
541
541
541
540
540
540
539
539
539
539
537
536
533
530
525
524
524
523
523
522
522
521
520
519
518
518
517
517
517
515
514
511
509
507
505
504
503
503
503
503
503
503
503
502
501
500
499
499
499
498
498
498
498
497
497
497
497
496
496
494
492
492
491
490
489
488
484
480
478
468
462
460
459
457
456
455
455
454
452
451
451
448
447
446
445
443
442
441
439
437
434
431
429
422
418
408
402
402
401
393
393
393
394
395
397
401
394
394
388
386
386
386
384
380
379
379
377
383
393
399
404
407
397
390
393
397
394
385
384
385
384
383
381
389
387
378
378
378
379
380
381
383
389
392
397
397
397
398
402
409
414
417
421
423
435
442
446
452
460
464
469
471
482
489
489
494
497
501
511
515
528
535
541
559
564
569
572
576
582
590
595
599
603
606
609
612
614
616
619
622
627
629
632
634
637
639
644
648
652
657
662
673
696
712
714
712
711
703
701
698
705
710
715
718
726
752
761
766
770
781
787
793
797
799
803
815
820
822
824
827
829
832
833
834
847
850
854
864
875
894
899
903
920
936
944
945
945
945
945
947
952
959
966
973
977
979
982
985
985
975
970
963
964
966
970
970
968
968
972
975
975
974
976
983
987
990
992
994
998
999
997
991
987
983
981
977
975
972
970
963
961
960
959
957
956
954
952
951
950
950
950
947
944
941
937
936
936
934
932
926
925
920
918
918
915
911
917
917
916
910
909
907
906
902
898
893
888
887
887
887
888
888
889
888
885
883
865
859
854
850
846
836
826
822
821
821
821
808
799
800
802
803
805
806
806
804
802
801
800
789
785
785
784
780
777
776
774
769
767
763
762
762
762
762
762
762
762
762
762
760
758
755
754
746
743
737
735
731
730
728
728
728
728
723
719
717
716
719
720
721
722
719
715
713
708
707
708
708
693
691
689
688
688
686
686
689
691
693
695
696
701
705
696
693
690
688
687
684
682
683
685
685
685
683
680
676
667
660
659
659
659
657
653
651
651
651
651
651
650
648
638
639
632
630
628
625
625
624
623
622
623
624
611
607
607
607
607
607
605
603
579
578
573
566
561
557
558
559
557
553
549
546
545
543
540
538
537
533
525
525
525
525
525
525
525
524
523
522
517
514
509
504
504
505
505
506
506
507
509
510
510
511
512
512
512
512
511
511
512
512
512
512
512
512
511
511
511
511
512
513
513
513
513
513
513
513
512
512
512
513
511
511
509
508
508
509
510
510
510
509
508
507
506
507
511
517
520
524
529
543
541
540
540
540
540
536
537
536
534
536
536
536
534
533
541
541
547
549
549
550
550
553
559
566
575
575
575
575
575
575
576
576
575
576
580
588
593
596
599
599
600
600
600
600
602
608
613
621
626
628
629
626
625
625
625
630
640
643
646
650
654
656
658
666
668
669
672
677
685
686
706
708
710
711
712
713
715
716
718
720
721
722
724
726
733
735
739
750
752
751
750
750
750
749
748
753
755
760
785
790
790
791
794
799
800
802
804
810
812
821
833
840
842
845
860
860
858
856
856
858
860
861
866
868
876
877
877
877
877
877
877
877
877
878
880
882
887
889
891
892
893
901
902
904
909
910
911
916
919
918
917
917
916
917
918
920
923
925
928
932
939
941
943
943
942
941
939
941
943
946
948
949
951
954
955
957
958
959
960
959
958
957
956
956
955
955
955
955
955
956
956
956
956
958
960
963
965
964
962
961
959
956
947
944
944
942
942
944
944
945
947
951
958
940
931
927
928
930
931
936
936
934
940
933
925
925
926
926
928
930
918
912
900
900
902
902
900
903
889
877
869
861
854
848
840
829
817
801
799
798
794
790
779
763
754
751
750
750
749
725
714
706
703
701
699
697
693
686
681
675
671
667
667
666
661
658
649
648
646
641
634
625
620
609
605
604
603
600
596
592
588
578
568
562
557
556
555
549
533
527
518
511
508
506
505
503
499
493
485
482
481
481
481
480
479
475
473
467
460
458
453
452
451
450
445
436
434
433
428
426
422
419
416
412
410
406
406
407
407
402
393
390
385
384
382
380
375
375
374
373
373
372
372
369
368
366
372
375
387
394
404
407
406
406
406
406
406
406
406
406
408
411
411
408
406
403
400
391
388
387
386
383
380
383
386
387
389
389
392
379
367
364
357
357
363
364
375
386
396
407
410
411
412
414
430
438
446
448
448
448
448
448
448
448
448
448
446
444
442
438
436
436
436
435
434
429
429
427
426
426
426
427
427
424
420
416
410
403
401
399
397
395
387
385
379
372
369
365
361
356
352
348
346
345
343
339
337
329
321
314
310
314
318
321
318
315
311
298
295
295
296
296
298
299
299
297
295
292
289
289
289
289
289
289
283
280
272
266
263
259
256
256
255
255
255
255
255
255
252
251
249
247
245
244
244
244
241
240
219
217
213
212
212
210
208
207
207
203
199
199
197
195
194
193
190
188
186
183
178
177
176
171
168
165
159
158
157
157
155
144
141
138
136
129
128
128
127
127
122
122
120
120
112
112
112
111
110
110
109
108
105
105
105
105
105
104
99
97
96
100
98
98
96
85
84
83
82
82
81
76
75
74
70
70
71
71
71
72
72
72
73
74
74
75
72
72
71
71
70
68
68
69
70
70
71
72
72
73
74
75
76
76
76
75
77
78
78
78
79
80
80
80
80
80
80
80
80
79
78
83
84
84
80
78
76
75
75
75
77
82
81
78
77
75
75
76
78
79
79
80
79
78
77
75
76
77
76
75
71
70
69
69
71
71
70
70
71
73
73
73
74
75
77
74
79
78
75
72
72
71
72
74
77
74
77
78
75
78
83
82
81
80
80
80
81
82
82
82
83
83
83
83
83
83
82
82
82
82
82
80
79
78
77
76
75
75
75
75
75
75
74
74
74
74
74
74
73
73
73
73
72
72
71
71
71
70
70
70
70
70
70
69
69
67
67
67
66
66
66
66
66
65
64
64
64
65
65
66
66
68
69
69
70
70
71
74
77
77
77
77
76
76
79
79
77
76
75
76
77
77
78
79
79
80
80
79
74
73
73
70
69
69
69
69
69
69
69
69
69
69
68
68
68
69
71
72
74
74
75
75
76
76
76
76
76
76
76
76
76
77
76
75
74
70
70
69
69
69
69
69
69
69
69
70
70
70
69
68
68
68
69
70
71
72
74
74
78
79
77
76
76
74
71
71
70
72
75
75
74
74
75
76
82
82
82
81
77
77
76
75
74
73
73
73
73
73
73
73
74
74
74
75
76
78
79
80
80
79
77
75
74
73
73
73
73
72
72
72
72
72
72
74
74
74
74
75
73
73
72
71
70
70
70
71
72
72
72
72
72
72
72
71
70
69
69
69
69
69
69
68
68
68
67
65
65
65
65
66
68
69
69
69
69
69
69
69
69
69
71
75
77
78
78
79
80
80
80
80
82
83
85
90
91
93
96
96
97
97
98
103
103
104
104
110
110
111
112
112
126
126
127
128
129
130
130
131
132
133
135
139
138
138
140
145
150
150
151
154
155
156
156
156
157
159
160
160
159
159
159
158
158
158
157
157
157
157
158
158
158
158
158
157
153
153
153
153
153
152
152
152
152
153
154
155
155
155
155
155
155
155
155
155
153