199
199
201
201
201
201
201
200
200
200
200
199
199
198
198
198
198
197
197
197
196
196
196
196
196
196
196
196
196
196
197
198
198
198
196
196
196
196
194
194
194
194
194
192
192
191
191
190
190
189
189
190
190
190
191
191
188
188
188
187
186
187
188
188
188
188
191
193
194
194
194
194
194
194
193
192
192
192
192
192
192
193
195
198
198
197
198
198
201
203
208
215
220
221
222
222
236
239
241
241
241
238
234
233
224
218
210
206
202
202
202
202
202
202
202
202
202
202
202
202
201
201
201
202
202
202
202
201
200
199
199
199
199
199
199
197
201
201
201
201
201
201
200
200
200
199
199
199
199
199
199
199
199
198
198
198
198
200
201
201
202
203
200
198
199
199
199
201
198
199
200
199
198
198
198
199
200
201
201
200
200
200
200
200
200
201
201
201
201
198
198
200
200
199
198
201
202
202
202
202
203
203
203
203
204
205
205
205
205
205
205
205
205
207
207
207
207
207
207
207
207
207
207
208
210
210
211
211
211
211
211
211
211
212
212
212
214
215
216
217
217
217
218
218
218
218
219
219
219
219
219
219
219
219
219
219
219
219
220
220
220
220
220
220
220
220
220
219
219
219
219
219
217
216
217
217
217
215
215
213
211
212
214
210
210
210
210
210
209
209
208
212
212
212
214
211
209
206
204
204
207
215
218
220
232
232
234
242
250
251
251
254
257
255
252
250
247
247
246
246
247
251
256
262
262
261
261
265
266
266
267
267
267
266
265
264
264
264
265
267
269
270
271
272
272
266
265
261
260
260
260
261
263
266
269
276
280
282
285
286
286
286
287
289
290
292
293
296
297
298
298
299
299
299
300
301
301
301
300
299
299
299
299
297
297
297
291
283
280
280
281
285
289
290
291
290
288
282
279
278
271
269
269
270
271
271
273
274
279
280
282
283
287
289
290
290
290
290
291
292
295
296
296
297
297
297
297
297
297
297
299
299
300
301
303
304
305
308
309
311
314
318
321
322
324
324
325
325
326
328
330
332
335
338
341
342
343
343
345
347
349
352
355
360
364
371
372
374
374
375
378
379
383
384
389
396
397
400
401
402
404
410
420
425
428
429
435
437
437
438
438
441
442
442
443
444
451
455
459
466
467
468
468
468
469
469
469
470
472
475
481
486
486
486
487
488
498
504
504
504
504
503
503
502
502
503
504
506
508
509
511
513
514
516
519
529
532
535
537
540
545
547
548
549
549
553
555
556
561
564
565
568
571
574
578
582
590
592
599
603
610
612
610
609
608
604
603
602
599
598
597
596
596
596
596
596
596
596
596
601
611
614
615
617
617
618
618
618
618
618
619
623
620
617
611
606
604
602
602
602
602
602
602
602
598
595
588
584
583
581
578
577
577
580
583
587
583
580
574
566
561
556
548
543
544
545
546
550
553
543
534
529
518
514
510
508
504
496
495
494
493
492
492
487
482
477
467
465
461
457
450
448
446
441
440
440
439
439
438
438
437
436
435
435
433
430
430
428
428
427
427
426
426
424
426
428
423
420
414
411
412
415
417
413
408
401
394
393
392
391
390
390
390
390
389
381
378
375
375
375
375
375
375
375
373
370
368
368
361
362
365
365
373
374
374
374
373
373
369
369
368
372
374
376
377
378
379
381
383
385
386
387
393
396
397
395
390
389
388
385
383
377
377
377
377
377
377
378
379
379
379
379
391
395
397
398
399
397
394
389
386
388
384
384
383
382
382
381
381
387
388
389
388
387
383
383
385
386
387
388
388
388
388
387
387
387
391
392
394
399
403
400
396
395
393
388
388
392
394
395
396
398
398
401
407
410
412
412
409
416
418
421
423
426
428
429
430
431
432
433
435
435
435
440
443
445
456
459
459
457
456
456
456
457
458
462
462
462
462
462
462
462
462
462
462
463
463
464
464
464
465
465
466
468
469
472
476
478
481
481
481
481
482
485
492
493
494
498
498
498
499
499
500
502
502
502
502
502
502
502
502
502
502
498
497
496
495
494
493
492
492
490
490
491
493
494
495
496
496
496
496
496
495
495
492
491
490
488
481
473
473
473
470
468
463
464
461
459
457
450
448
444
442
442
444
445
444
444
444
444
444
444
444
444
445
445
446
446
446
447
447
451
452
452
453
453
453
453
458
464
464
465
465
466
467
467
473
478
475
473
475
476
486
487
489
492
494
498
503
505
507
510
510
509
509
508
508
508
508
508
509
511
511
512
521
523
523
524
524
533
536
543
553
559
560
560
562
564
565
566
568
569
570
571
571
572
574
577
578
579
580
580
581
585
587
588
591
592
592
595
596
600
602
605
606
607
608
608
609
611
612
614
615
616
618
618
618
619
620
621
621
623
623
624
624
625
632
656
656
654
654
654
654
655
655
656
656
657
658
658
657
660
667
668
663
658
652
675
677
677
677
677
677
678
678
678
678
678
679
681
684
689
696
703
712
717
729
738
744
744
750
760
769
769
771
771
782
804
806
808
809
811
812
807
806
807
807
808
808
808
809
809
809
810
810
810
810
811
822
827
827
827
818
805
799
790
788
793
794
794
794
798
800
801
786
765
758
755
753
751
732
714
708
695
689
688
695
697
699
701
705
676
644
646
642
633
620
616
615
613
605
600
599
598
597
595
593
588
584
568
553
557
563
564
566
568
571
571
570
564
560
558
555
553
550
547
546
546
547
548
548
548
543
543
543
543
543
541
535
533
527
534
535
535
535
535
533
531
529
527
535
536
532
527
524
517
517
518
519
518
515
507
505
503
502
500
500
499
498
497
497
494
485
487
492
494
495
497
498
502
503
506
513
515
518
518
515
512
508
505
502
499
493
491
491
490
489
487
485
483
486
485
484
487
488
490
491
503
506
504
500
499
498
497
496
496
494
493
490
485
483
480
479
484
487
485
481
480
478
485
487
481
473
472
471
471
470
470
469
469
470
472
472
473
476
481
489
480
478
476
474
467
467
466
465
465
465
465
464
463
463
462
462
461
461
461
461
461
461
461
461
460
460
459
459
459
460
461
461
461
460
460
457
456
456
455
448
448
448
448
448
448
447
447
447
447
446
449
450
451
451
452
454
460
463
465
459
459
458
456
454
454
453
453
452
451
467
466
457
448
445
445
447
449
448
447
449
451
454
459
463
460
452
454
455
449
447
446
444
444
445
445
444
443
442
441
441
443
443
444
446
447
447
451
453
454
455
462
463
464
466
466
466
465
461
461
462
465
466
465
465
463
462
462
463
463
464
465
466
466
467
468
468
467
462
460
463
464
466
467
467
467
468
469
471
472
472
472
474
474
475
475
475
475
477
475
474
474
475
476
480
480
481
484
487
492
493
496
496
496
498
498
498
500
504
510
508
503
504
505
507
507
509
509
510
511
514
515
523
524
524
525
526
526
527
528
528
528
530
536
538
539
540
542
543
544
544
545
546
546
546
547
548
548
548
547
546
544
543
542
541
540
538
536
536
535
535
534
534
534
534
534
536
536
538
540
541
541
542
542
542
543
550
552
553
558
561
562
563
569
568
568
567
565
565
564
564
563
563
563
562
562
562
562
561
561
561
561
562
563
565
566
568
569
570
572
573
573
573
573
573
573
573
573
573
578
586
597
601
604
608
613
615
616
616
620
622
623
624
628
631
635
635
635
637
638
638
638
646
647
649
651
653
655
655
655
655
655
656
656
656
657
657
658
658
658
656
655
654
653
653
652
652
652
654
655
656
658
658
659
660
661
662
669
677
682
696
697
697
699
709
717
720
722
723
723
723
723
723
723
723
725
728
730
733
739
741
742
743
744
746
755
758
759
761
763
766
767
767
768
769
770
772
773
774
774
775
775
778
779
781
787
789
793
795
799
808
815
817
821
829
830
834
836
838
841
842
843
843
844
845
845
846
846
847
849
850
851
853
855
859
863
868
870
871
872
878
880
892
899
906
911
913
918
922
937
939
942
947
927
917
905
912
915
917
918
919
920
925
926
927
927
927
926
926
925
924
924
923
925
927
936
940
941
943
952
959
966
973
992
999
1005
1006
1008
1008
1009
1012
1014
1016
1017
1019
1017
1012
1009
993
985
976
970
963
955
944
919
916
907
903
898
894
894
894
894
892
891
891
890
886
881
880
879
872
858
847
836
830
828
826
821
813
797
791
786
784
786
786
781
773
770
767
763
758
755
750
745
738
722
720
718
715
710
709
704
701
696
692
683
678
673
671
666
665
663
662
661
658
657
657
654
652
650
648
642
641
638
633
632
631
631
631
631
631
630
630
630
630
630
630
630
632
633
636
639
640
642
643
645
647
647
649
650
656
657
661
665
665
663
662
661
661
660
658
656
656
658
658
661
662
664
666
667
669
670
671
673
675
676
677
678
679
680
681
682
683
684
687
689
696
698
700
703
704
705
706
706
707
709
711
713
714
715
716
721
728
734
746
749
751
754
754
754
753
761
770
770
770
770
768
763
759
758
756
755
755
755
758
759
759
758
758
758
757
755
754
754
753
753
753
753
753
753
752
751
751
752
752
753
753
753
753
753
753
753
752
751
751
751
751
751
752
755
755
762
770
776
781
787
788
785
783
781
772
765
762
761
760
759
758
758
758
762
762
764
766
767
767
767
767
767
767
767
767
766
766
766
764
764
764
760
765
765
765
764
764
764
764
764
764
767
769
771
767
766
760
758
758
758
758
758
758
758
758
758
758
758
759
759
759
759
759
759
759
759
758
758
758
758
758
758
758
758
758
758
757
757
756
756
756
757
757
779
789
798
799
800
805
809
812
815
817
819
822
824
822
814
807
800
800
800
801
801
804
805
805
805
806
820
821
821
821
822
828
828
829
830
831
831
830
829
829
832
833
834
834
834
831
829
828
828
827
826
825
825
825
824
824
824
824
825
825
825
821
798
795
794
794
793
793
793
793
793
793
793
791
791
790
789
789
786
765
760
757
754
752
749
740
736
731
729
731
731
731
732
732
733
733
723
716
700
697
697
697
697
697
695
694
693
693
693
692
692
690
686
679
665
661
664
665
662
659
657
656
652
649
644
639
636
632
618
605
597
589
586
581
577
571
567
558
545
544
538
537
534
528
518
510
508
507
498
494
491
491
488
480
474
469
469
469
460
456
448
447
441
433
430
420
416
414
396
395
394
391
388
386
385
384
384
383
381
380
380
377
372
370
368
362
360
358
351
349
345
342
340
339
340
340
340
339
332
329
327
326
326
326
326
326
326
327
328
329
330
330
330
330
331
334
337
338
339
340
340
340
340
342
343
345
346
348
349
350
349
349
348
348
348
352
358
361
364
365
366
366
367
368
369
370
364
358
356
356
354
353
352
352
352
352
352
352
353
351
352
353
353
353
353
352
352
353
352
352
350
350
351
351
352
352
352
352
363
372
376
378
376
374
368
361
361
361
363
367
370
380
379
378
375
372
370
375
379
381
382
383
383
384
391
392
393
394
394
395
396
398
401
406
408
409
410
412
415
416
421
423
423
423
423
423
425
426
427
428
430
431
433
434
434
435
435
436
436
439
439
440
440
442
443
443
444
444
445
449
450
450
452
454
454
455
455
454
454
454
456
458
462
463
464
468
469
470
474
475
478
480
486
487
488
490
491
492
493
494
495
498
500
501
504
511
513
514
518
519
521
523
526
528
530
534
535
541
544
547
550
560
561
563
563
564
565
565
567
568
568
563
558
555
552
544
543
543
543
543
543
543
543
543
543
540
537
536
535
536
537
540
541
542
543
545
546
547
547
546
544
540
537
531
529
525
522
521
520
514
512
510
510
513
514
517
522
523
524
525
528
532
534
556
557
560
567
569
572
574
577
581
582
582
583
583
584
585
586
586
586
586
586
586
587
587
587
587
588
590
594
596
598
601
603
609
612
614
617
619
621
626
633
634
634
634
634
634
634
634
635
636
641
642
642
644
645
647
649
651
653
654
656
658
660
667
673
682
691
691
693
696
699
702
705
707
708
711
717
719
721
721
721
720
720
720
720
720
720
722
730
734
740
741
741
743
743
744
745
746
747
747
749
750
751
752
753
754
755
756
759
761
762
764
765
765
766
766
767
767
768
768
769
769
770
771
771
772
773
775
776
776
777
777
777
776
774
773
773
772
772
773
774
783
786
791
794
795
791
783
782
781
775
781
783
785
787
787
783
781
779
781
782
784
794
806
810
808
806
802
796
791
788
775
774
765
763
763
763
763
762
751
742
733
722
721
720
720
720
717
716
713
711
707
707
705
704
699
698
696
694
693
691
674
671
665
645
636
636
636
636
636
636
636
639
639
640
641
643
652
653
654
654
655
655
655
654
653
651
649
648
648
648
648
649
649
650
650
650
650
650
650
650
650
650
650
650
651
656
659
661
662
666
667
668
667
666
664
662
662
658
657
656
656
656
656
656
655
655
655
655
655
655
655
655
655
656
656
656
657
658
659
659
659
660
660
660
660
662
667
669
672
682
684
674
669
664
662
660
656
651
651
651
651
651
653
656
660
663
674
680
678
675
673
664
664
664
664
661
660
658
657
653
652
648
646
643
640
637
635
625
619
618
616
612
606
606
605
604
604
601
599
596
582
579
573
570
570
569
570
572
575
580
583
583
586
591
594
596
600
598
594
592
590
589
586
584
583
583
582
581
579
577
575
573
573
572
569
555
553
550
544
547
548
550
551
552
554
553
547
544
543
541
540
532
515
511
505
504
490
475
462
456
449
442
428
427
421
419
417
416
413
411
408
406
404
394
387
377
376
360
354
350
347
341
339
335
333
332
329
327
325
323
322
321
319
318
316
315
315
314
314
315
316
317
318
320
321
320
319
315
313
312
312
314
317
318
320
322
322
320
318
319
327
329
334
332
329
324
315
301
300
300
300
300
301
301
301
301
301
301
299
298
298
297
297
297
294
294
290
288
287
284
282
282
282
281
281
276
275
271
266
264
260
258
257
258
261
265
265
265
266
266
267
267
268
269
270
270
270
271
272
272
270
269
268
264
261
259
261
258
247
246
246
247
247
248
248
249
249
256
258
257
254
251
253
253
261
266
268
275
281
281
291
305
306
304
304
308
315
326
330
331
334
336
337
340
339
338
334
333
332
331
330
329
324
323
321
318
317
316
316
315
314
312
312
308
308
307
306
306
306
305
304
304
304
304
304
304
304
303
300
298
298
294
293
289
286
282
280
280
278
277
275
272
271
270
269
268
266
263
262
261
252
245
237
237
236
236
235
235
231
231
229
228
228
225
223
223
223
222
221
221
220
219
219
221
224
226
227
228
227
227
226
226
225
225
225
225
226
227
228
230
231
231
231
231
233
236
237
238
238
238
238
241
242
242
242
242
242
243
243
245
245
247
248
248
249
249
249
249
249
249
248
248
247
246
246
246
246
246
248
249
250
251
250
250
249
248
248
248
248
249
250
252
253
253
252
252
251
240
231
230
229
231
232
232
232
232
232
232
232
231
231
231
229
229
230
230
230
230
230
232
232
233
234
234
234
234
229
227
226
224
224
219
219
219
219
216
212
212
212
212
212
212
212
212
209
208
207
207
207
208
208
208
209
210
210
210
210
210
212
213
215
215
216
216
213
212
212
212
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
210
209
209
211
212
212
212
215
216
215
214
213
216
216
216
215
214
213
216
216
216
216
216
216
217
217
222
223
223
224
226
248
243
212
212
212
213
213
214
216
218
231
231
231
231
231
231
230
230
229
224
223
222
216
210
209
208
205
201
201
200
194
197
198
198
198
197
192
192
191
191
191
191
191
191
191
191
191
191
195
195
195
195
195
195
201
202
202
202
203
204
205
205
206
206
206
205
205
205
208
210
213
215
216
215
214
210
206
205
205
205
205
202
200
200
200
200
200
200
200