423
423
423
423
423
423
423
423
424
424
424
423
423
423
422
420
419
418
418
417
418
421
423
422
422
422
422
423
423
423
423
423
424
424
422
419
419
420
421
430
430
427
424
424
428
429
429
430
430
431
433
434
437
443
445
446
444
442
442
437
433
431
431
432
434
434
434
434
436
436
437
437
436
434
434
434
434
434
434
434
435
435
435
435
435
435
434
433
433
434
434
435
436
437
437
438
438
439
439
439
439
441
442
444
447
447
448
448
448
449
450
450
452
452
453
453
456
458
461
469
474
475
477
482
485
488
509
520
521
523
524
525
525
528
530
536
540
555
562
562
569
581
585
588
590
592
594
597
598
598
597
596
596
596
596
596
596
597
598
599
603
603
605
606
606
607
608
608
608
605
598
595
595
598
602
603
603
602
601
600
599
598
598
599
599
603
603
604
605
605
608
609
613
617
620
625
627
627
627
627
627
628
628
628
628
627
627
627
626
626
626
626
626
630
635
637
638
643
646
646
646
646
646
646
646
646
646
646
648
650
653
656
657
657
658
658
659
659
659
659
659
659
659
660
663
664
664
664
664
665
666
667
671
675
676
677
678
678
679
680
682
683
684
684
686
687
688
688
688
688
688
688
688
688
688
689
689
689
690
690
691
691
692
692
693
693
694
694
695
697
698
698
697
697
697
696
695
694
693
693
693
693
693
696
699
701
703
707
708
708
710
709
706
704
702
701
701
701
701
701
700
700
699
699
698
698
698
698
699
699
700
700
702
704
704
703
703
702
702
701
701
700
699
698
697
697
697
698
700
704
706
707
708
709
711
712
712
713
713
715
718
722
723
723
723
723
723
723
723
723
723
723
723
723
723
723
724
725
725
724
721
723
724
723
723
723
723
723
724
724
725
725
726
730
732
733
734
736
738
739
740
738
738
738
738
738
738
737
737
739
740
740
740
740
739
737
735
737
739
739
739
740
744
747
747
746
745
745
745
745
743
743
743
742
742
742
743
743
743
743
743
743
742
741
733
728
726
728
732
734
734
735
736
737
736
734
732
731
731
730
729
729
729
729
729
730
730
730
730
730
732
737
743
749
749
748
747
747
748
749
750
751
752
753
753
754
754
755
757
756
756
754
752
750
747
744
744
744
744
744
745
746
746
746
748
751
751
744
743
735
732
728
726
725
723
722
720
719
718
715
712
706
704
702
702
702
702
702
697
696
694
692
691
689
687
686
685
684
684
683
680
677
675
675
672
670
671
673
674
673
671
669
668
667
665
666
667
669
670
671
673
675
678
683
686
690
694
696
698
698
702
707
709
709
708
707
707
707
707
707
707
707
707
708
709
711
713
714
717
721
724
728
732
735
738
742
750
757
764
768
766
765
765
766
768
769
771
772
771
769
765
761
758
756
754
754
756
755
749
746
744
742
741
736
732
729
725
716
709
705
704
700
698
695
692
690
689
689
690
690
691
691
691
689
686
684
680
678
676
672
669
661
650
647
642
639
637
634
632
629
623
621
618
614
610
607
600
597
594
590
589
586
586
583
582
581
580
578
575
574
572
572
572
572
572
571
570
570
569
568
568
568
567
567
567
566
564
562
560
560
560
559
557
556
554
554
553
553
551
551
550
550
549
547
547
545
545
544
542
542
542
541
540
540
540
540
540
540
540
540
540
541
541
541
541
541
541
541
542
544
546
549
549
547
546
544
543
542
542
541
541
541
540
540
540
540
541
543
544
547
549
549
550
553
555
555
556
556
557
559
560
563
564
565
566
567
568
569
571
573
574
574
575
576
576
577
579
579
579
578
577
577
577
576
575
575
576
577
578
578
579
579
579
578
578
577
577
577
578
579
581
583
585
583
581
580
580
580
581
582
583
584
585
585
587
591
592
594
598
601
609
610
612
614
616
622
625
627
622
620
618
612
605
600
595
591
587
584
582
580
577
575
573
570
566
564
562
561
560
559
557
555
554
552
548
545
544
543
542
541
540
539
538
536
533
533
533
533
534
534
531
527
524
521
518
515
512
507
503
503
499
494
489
486
483
481
480
480
480
480
480
480
481
482
482
482
482
482
481
481
480
479
480
480
481
481
481
489
504
510
520
528
538
554
578
595
571
546
523
500
482
480
479
483
487
489
493
496
494
494
493
492
491
490
489
488
488
487
486
487
489
490
491
492
494
497
493
491
488
488
493
494
496
497
497
498
497
496
495
494
495
495
495
490
487
484
483
482
482
483
483
484
485
489
490
491
490
487
487
485
485
485
485
485
484
484
484
484
484
484
483
483
483
482
482
482
482
482
481
480
480
480
480
481
481
481
481
481
481
482
483
482
481
481
481
481
481
483
484
484
484
484
484
483
482
482
482
480
479
477
476
476
476
476
476
476
476
476
476
475
475
475
475
475
475
475
477
477
478
479
480
480
482
482
482
482
479
476
475
473
472
471
471
471
471
471
471
472
472
472
472
472
472
472
472
472
472
472
472
472
473
474
475
476
477
476
476
476
477
478
478
478
476
476
474
473
472
471
471
471
471
471
471
471
471
473
473
473
474
479
482
481
479
477
475
475
475
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
474
475
476
477
477
476
476
475
474
474
474
474
474
473
472
472
472
472
473
473
473
473
474
474
474
474
474
474
474
475
475
475
475
474
474
474
473
473
473
473
473
473
473
473
473
473
475
477
477
477
478
482
479
477
475
474
472
472
472
472
472
473
473
474
475
476
480
483
479
472
472
472
472
472
473
474
475
476
478
480
482
487
490
493
498
498
497
494
492
491
488
485
484
483
483
482
481
481
481
481
482
482
480
476
475
475
475
475
475
474
473
473
473
472
471
471
471
472
472
473
473
473
473
473
473
473
473
473
473
473
473
473
472
472
471
470
470
470
470
470
471
475
479
482
484
486
489
490
492
495
496
497
499
500
501
502
501
501
500
499
498
497
496
495
495
495
495
495
494
494
493
493
492
491
490
489
489
487
486
486
487
489
490
492
494
495
496
496
496
493
491
490
489
489
489
489
488
485
485
483
482
482
480
479
478
478
477
476
474
471
470
470
470
471
471
471
471
472
473
474
474
475
475
475
475
474
474
474
474
474
475
475
476
476
476
476
476
475
475
475
474
474
474
474
474
472
472
471
471
471
471
471
471
472
472
472
473
473
473
473
473
474
474
475
475
476
478
478
479
479
479
477
475
474
474
473
473
477
479
485
488
492
492
493
493
493
492
487
485
481
479
478
476
475
475
475
475
475
475
476
476
475
475
475
474
474
473
472
472
472
472
471
471
470
469
469
468
469
470
471
476
478
479
483
485
485
485
485
485
484
483
481
481
480
479
478
477
476
474
474
473
472
472
472
471
471
470
471
473
473
474
478
478
479
482
482
482
481
481
481
481
483
483
483
482
481
481
480
478
478
477
477
478
479
480
478
474
472
470
469
468
468
468
468
468
471
472
473
475
476
475
474
474
474
474
477
478
480
482
483
484
485
486
487
486
486
486
484
483
481
479
478
478
477
477
476
476
473
472
471
471
471
470
470
469
469
469
469
469
469
469
470
471
471
471
471
472
473
474
476
479
483
488
491
496
501
504
505
505
506
507
507
507
507
507
507
507
502
495
492
492
492
492
491
490
489
489
489
489
489
489
489
489
488
487
487
488
488
488
487
487
487
487
488
488
488
489
489
489
489
489
489
489
489
489
489
489
490
491
491
491
491
490
490
489
489
488
488
488
488
490
490
490
489
489
490
491
493
495
498
499
499
500
500
499
498
496
494
492
491
489
487
485
484
483
483
483
483
483
483
483
483
483
484
485
486
486
486
486
486
485
483
482
482
481
478
476
474
475
476
478
479
481
482
484
485
485
486
492
492
492
492
492
493
492
492
491
488
486
485
485
483
482
481
480
479
478
478
478
478
478
479
480
480
480
479
478
473
471
470
470
465
461
461
461
461
461
461
460
459
459
458
458
458
458
458
458
458
459
459
459
459
458
458
458
458
457
456
456
456
456
456
456
455
454
453
452
452
452
451
450
448
445
444
443
440
436
435
434
433
432
431
428
426
425
424
424
423
423
422
422
424
427
434
434
431
429
429
426
425
424
423
422
422
422
422
422
422
421
420
419
419
419
419
418
418
417
416
413
412
411
410
410
409
408
408
409
409
409
411
412
412
412
412
412
408
407
406
406
405
404
404
403
402
402
402
402
402
402
402
402
402
402
402
402
403
406
406
407
409
409
409
410
410
410
413
413
416
417
418
418
418
418
418
419
419
419
418
418
418
418
418
417
416
414
411
409
407
407
407
407
407
407
407
408
408
409
410
410
410
409
409
405
403
402
402
401
398
397
397
397
397
397
397
397
397
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
398
398
399
401
402
402
402
401
401
401
401
401
401
401
401
401
401
401
405
406
406
409
416
418
421
421
421
421
422
422
422
423
428
431
432
432
433
434
436
438
439
441
441
442
443
443
443
443
442
441
440
440
442
442
442
441
440
439
439
439
438
438
437
437
437
438
440
440
440
440
439
438
437
437
436
436
436
435
434
432
432
431
430
430
429
428
427
425
426
426
425
424
423
423
423
423
422
422
422
422
421
420
419
418
416
416
412
407
405
403
401
401
400
400
400
400
401
402
403
403
402
402
401
402
403
404
404
401
399
399
398
397
396
396
396
398
400
396
393
390
389
389
388
388
387
387
387
388
389
389
389
388
387
386
385
384
384
384
384
385
385
386
386
386
386
386
386
386
386
386
384
383
381
381
380
380
380
380
380
380
381
381
380
379
379
379
378
378
378
378
380
381
382
384
385
386
385
383
381
380
377
377
379
380
380
381
382
383
385
385
386
389
390
391
391
389
386
385
384
383
384
385
387
390
388
383
383
387
389
389
390
391
391
391
390
388
386
384
380
377
375
370
365
362
360
356
355
355
354
354
354
353
353
353
353
353
353
353
353
353
353
353
353
351
350
350
350
350
350
352
354
355
355
356
358
359
359
360
360
360
360
359
358
357
356
356
355
353
352
351
351
349
349
349
350
350
350
350
352
355
357
358
359
360
361
360
359
359
360
361
361
362
363
365
365
365
365
364
363
362
362
362
362
362
362
362
362
361
361
361
359
359
357
356
355
354
354
354
353
352
351
348
348
347
346
345
344
342
342
342
342
343
343
343
344
344
344
344
344
343
343
342
340
339
339
339
339
340
340
340
340
340
340
340
340
341
341
342
342
343
343
343
344
344
344
344
342
342
342
342
343
344
344
346
348
348
348
348
348
347
347
347
348
348
348
348
348
349
349
348
348
345
343
342
341
339
338
338
338
338
338
338
338
338
337
336
336
335
335
335
335
335
334
334
334
334
333
333
333
333
332
332
332
332
332
332
332
333
333
333
333
333
333
332
331
331
332
332
332
332
331
330
332
335
335
334
331
330
329
329
329
329
329
329
329
329
329
329
330
330
331
331
331
330
330
329
328
328
328
328
328
327
327
327
327
327
327
328
329
331
332
332
332
332
332
331
330
330
329
329
329
329
329
329
329
329
329
329
329
331
335
334
333
332
332
332
331
331
330
329
329
329
329
329
329
329
328
328
328
327
327
326
326
325
325
325
325
325
325
325
325
325
325
325
326
326
327
327
326
326
324
323
323
322
322
322
322
321
321
320
320
320
320
320
321
321
322
322
322
322
322
322
322
322
321
320
320
320
320
319
319
319
319
319
319
319
319
320
320
320
320
321
321
321
321
321
321
321
320
320
320
319
319
318
318
318
319
319
320
320
320
320
320
320
320
320
320
320
320
320
320
319
319
319
319
318
318
318
318
318
318
318
318
319
319
319
319
319
319
319
317
317
318
318
318
317
317
317
317
317
317
317
317
317
318
318
318
319
319
319
319
318
317
316
316
316
316
315
314
314
314
314
313
312
312
312
312
314
314
314
315
314
312
312
312
312
312
312
312
312
312
312
312
313
313
313
312
312
312
313
313
314
314
313
313
313
313
313
313
313
313
313
312
312
312
312
312
314
314
312
310
310
310
311
311
311
311
311
310
310
310
310
310
310
310
310
310
309
309
309
309
308
307
307
307
309
310
309
308
308
309
309
307
306
306
307
308
308
307
306
305
306
306
306
307
309
308
305
305
306
307
307
307
307
308
308
308
306
305
303
302
302
302
303
303
303
303
304
304
304
303
303
303
304
304
305
305
305
302
298
297
296
296
295
296
296
296
296
293
293
293
293
293
294
294
294
294
294
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
294
294
294
294
294
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
294
294
294
293
293
293
292
292
292
292
292
292
292
292
292
292
292
292
292
292
292
291
291
291
291
290
290
290
290
290
290
290
290
290
291
291
291
292
293
293
293
293
293
293
292
292
292
292
292
292
292
292
292
294
294
295
296
296
296
294
294
293
292
292
292
291
291
291
291
291
291
291
291
291
291
291
292
293
293
293
293
293
292
292
292
292
292
292
292
293
293
293
293
293
294
295
295
296
296
296
296
296
297
297
296
296
297
297
296
295
295
295
295
295
298
300
301
301
301
301
301
300
299
299
299
300
300
301
301
301
301
302
303
303
301
301
300
300
300
300
301
302
302
302
302
302
302
302
302
302
302
302
302
302
302
304
304
305
306
306
306
305
305
305
304
304
304
305
306
306
306
306
306
306
306
306
307
307
307
307
307
306
306
306
305
305
305
305
305
305
305
305
304
303
302
301
301
300
300
300
300
300
300
299
298
298
298
298
298
298
297
296
296
294
294
294
294
294
293
293
293
293
293
293
293
293
293
294
294
293
292
292
292
292
292
291
291
290
290
291
291
291
291
291
292
293
294
294
293
291
291
291
292
292
292
292
292
292
292
292
292
291
290
290
291
292
292
291
291
291
291
291
290
290
289
289
289
289
292
294
296
296
296
296
296
296
296
296
296
296
296
296
296
297
299
299
300
301
304
307
310
313
319
324
326
331
331
332
332
332
331
330
328
328
327
325
326
327
329
330
330
330
330
331
333
335
336
337
337
337
336
336
335
335
333
332
330
329
329
329
329
329
329
329
329
329
331
334
339
338
337
335
335
335
335
336
338
341
343
344
341
337
336
335
333
332
329
328
326
325
321
320
318
317
314
311
308
308
307
306
303
301
299
297
293
290
289
289
285
282
282
281
281
280
280
279
278
277
276
277
279
280
280
281
281
282
283
284
285
285
284
283
282
278
278
278
278
278
278
278
278
278
278
279
281
281
282
282
284
284
284
285
285
285
287
287
287
287
287
287
287
287
289
292
298
305
307
310
311
316
319
320
321
322
323
324
325
318
313
313
313
314
318
321
323
323
323
323
323
322
322
322
322
319
318
313
311
311
307
307
306
306
305
304
303
302
302
301
301
300
298
295
291
289
287
285
280
278
276
274
270
269
269
271
273
273
273
273
273
273
272
271
271
270
270
270
269
268
266
265
265
265
264
263
262
260
258
258
257
257
257
257
257
257
258
260
264
264
263
261
260
260
260
260
259
259
259
259
258
256
259
264
267
268
268
268
268
267
267
267
267
268
269
267
265
263
262
260
259
259
259
259
259
258
257
257
257
257
258
258
256
256
256
256
257
258
258
258
258
259
259
259
259