508
507
512
512
511
511
509
510
512
506
511
512
511
512
511
511
515
513
508
506
510
511
509
509
511
513
512
511
507
513
512
512
507
510
515
510
508
511
513
515
509
507
514
515
514
508
513
515
509
510
512
514
512
509
510
513
510
510
511
516
516
510
509
513
515
512
508
512
516
516
510
512
514
513
508
515
515
513
509
512
515
510
510
511
513
513
507
508
515
513
512
508
507
514
511
510
508
514
516
513
510
509
512
513
506
511
516
514
515
511
512
515
512
507
512
514
514
509
507
511
514
512
509
512
514
516
509
512
514
514
509
508
509
511
510
505
509
515
512
507
510
512
514
508
508
514
510
513
510
515
514
512
510
513
512
512
506
511
516
509
507
512
515
513
507
513
514
510
508
509
515
515
509
508
513
514
510
510
516
512
511
508
510
512
512
513
517
514
513
512
510
513
513
512
510
507
512
513
507
511
512
514
512
511
513
515
513
510
508
511
516
509
507
509
517
517
511
513
514
513
511
510
511
515
511
510
510
512
511
508
512
512
512
512
509
510
514
508
507
511
518
514
510
512
513
512
509
510
512
513
513
511
517
517
512
509
518
515
511
510
513
514
512
512
512
513
511
508
512
517
511
509
510
513
512
509
511
512
519
513
511
514
513
509
508
506
513
514
509
508
511
516
516
511
509
513
513
511
511
514
517
512
510
510
515
516
511
509
511
516
512
509
511
516
513
510
508
513
511
509
508
513
508
507
507
515
515
511
514
514
518
511
508
511
516
513
508
509
512
511
508
515
514
514
511
508
514
515
510
509
511
512
507
507
514
515
513
509
512
514
510
508
512
515
513
507
511
514
513
511
509
511
512
506
512
516
516
509
506
512
513
517
512
510
511
511
507
508
513
515
512
509
510
517
515
512
509
509
515
512
513
515
514
512
511
509
513
511
508
507
513
514
508
512
513
515
513
508
510
512
512
509
511
513
512
508
510
513
514
510
510
514
509
510
511
512
514
510
506
513
514
513
510
510
515
509
508
507
513
512
509
514
513
512
509
510
514
517
508
509
513
515
513
509
514
516
514
509
509
512
514
506
504
509
514
512
509
510
512
513
509
508
512
513
510
508
507
513
513
510
509
515
516
514
511
511
514
511
509
508
514
513
507
508
511
511
511
507
511
515
512
512
509
513
513
510
510
513
515
514
511
508
514
509
508
511
519
515
505
510
517
513
508
508
512
514
507
506
514
518
515
510
514
510
507
510
518
516
508
512
511
513
506
509
513
513
508
509
513
516
515
507
513
515
513
510
507
510
512
506
506
510
514
517
512
514
515
514
512
509
508
514
512
511
510
514
515
513
516
519
525
523
519
514
518
512
510
508
512
513
511
511
512
515
516
511
508
511
510
507
507
512
510
510
514
511
515
512
507
509
513
511
509
510
516
515
510
516
515
515
512
510
515
512
512
512
511
512
511
508
517
513
511
507
511
514
509
510
510
512
509
509
510
511
509
508
507
511
512
509
509
512
517
513
510
511
514
514
512
511
512
514
510
509
510
511
513
511
508
514
517
512
508
510
516
514
508
507
511
515
511
507
513
514
513
509
510
513
513
511
508
511
514
512
508
514
515
511
508
513
515
508
509
509
515
510
509
512
513
513
508
512
515
513
507
510
512
513
508
508
513
514
510
506
515
514
508
512
513
513
513
508
511
516
511
509
511
514
511
508
511
516
515
510
507
511
514
508
510
507
515
514
508
509
514
515
511
509
509
514
508
506
507
508
514
512
508
513
515
513
508
508
515
512
509
508
513
515
516
511
516
514
512
505
508
512
510
510
507
511
512
511
514
516
513
512
507
511
517
510
510
512
514
512
509
515
514
512
510
510
512
514
509
509
512
510
511
507
514
518
513
510
510
513
509
509
508
511
511
507
509
516
511
511
510
512
515
513
512
512
515
513
512
510
514
509
510
506
513
518
512
509
510
513
517
514
510
512
515
513
510
509
510
513
510
509
511
516
513
509
508
511
514
509
508
511
514
511
510
512
515
512
508
511
513
514
511
510
513
511
506
509
513
512
509
505
512
514
511
507
513
517
511
512
513
514
511
508
509
513
510
506
510
515
509
507
509
511
516
511
510
512
515
509
506
509
513
513
507
510
512
517
512
507
508
515
509
510
509
511
513
511
510
512
516
512
509
507
515
511
509
510
514
512
511
512
515
515
512
508
510
514
510
509
509
515
516
511
514
513
517
512
506
507
514
510
508
509
514
513
510
512
514
515
509
509
510
513
509
507
511
515
511
509
517
518
515
507
509
512
509
509
512
512
511
509
507
510
511
509
507
511
514
509
513
513
512
509
506
507
513
514
509
510
513
515
511
511
511
511
512
512
505
510
511
513
510
512
512
513
508
506
509
514
513
510
514
513
514
508
507
512
515
509
508
509
511
509
507
514
514
514
509
511
515
511
508
509
512
511
506
506
515
517
512
511
514
514
508
509
513
511
509
504
507
511
512
508
509
512
514
509
509
510
511
509
509
512
512
512
508
511
512
511
506
512
514
515
508
508
511
509
510
507
512
515
510
506
511
514
511
505
507
511
511
513
509
512
514
513
509
510
514
515
509
508
512
511
511
508
510
515
513
508
511
513
513
511
507
511
512
513
506
511
512
513
506
509
514
513
510
511
513
510
508
509
513
514
511
507
511
511
511
509
512
518
508
508
509
517
516
509
510
513
512
509
506
509
515
510
510
509
513
510
507
514
518
516
512
515
525
529
523
519
519
519
512
509
514
511
512
509
511
514
514
509
510
514
515
512
509
510
512
512
508
509
511
513
507
507
512
515
511
509
512
517
514
512
509
513
514
508
509
512
516
513
507
512
509
510
507
510
512
514
509
509
513
511
508
509
512
512
512
511
514
513
510
508
513
516
512
508
511
516
512
508
509
513
513
508
511
511
514
508
507
513
513
510
509
511
513
512
507
514
514
513
508
509
510
510
506
505
511
512
510
509
516
515
511
508
508
513
511
507
509
514
516
513
509
513
513
514
508
509
511
510
507
507
513
515
511
505
513
515
515
508
509
513
515
510
509
511
512
512
507
514
514
515
508
509
512
512
506
508
510
512
511
509
515
514
512
507
508
512
509
511
512
515
513
510
509
513
514
511
508
510
513
506
507
510
516
513
508
509
510
511
511
512
514
514
508
509
513
514
510
511
515
508
508
508
513
513
508
508
512
514
512
507
508
513
508
509
509
514
515
514
513
513
514
511
507
510
514
511
509
506
509
512
510
507
510
512
513
511
510
513
512
512
511
509
509
511
507
508
513
518
512
510
511
510
508
508
511
514
514
510
513
513
512
509
509
514
509
507
508
513
513
509
510
512
513
511
509
509
511
508
509
513
514
508
504
516
516
512
507
511
514
512
510
510
513
512
508
508
514
513
510
509
514
514
514
510
509
512
513
511
508
513
514
512
509
509
515
515
507
507
510
516
516
511
513
518
514
510
513
512
513
507
507
507
513
512
509
512
515
514
508
510
513
518
510
505
510
515
510
510
514
516
515
510
511
516
513
511
508
510
511
508
508
516
511
509
505
513
515
510
510
513
514
510
507
508
513
508
509
511
515
513
508
514
515
517
511
508
514
512
509
508
510
513
512
510
517
514
513
509
508
511
510
507
507
511
515
515
508
514
512
513
510
507
509
513
510
510
509
512
512
509
511
512
516
512
509
510
516
514
512
511
515
516
509
512
513
513
509
509
511
515
509
509
510
513
512
507
511
510
513
509
509
513
511
508
505
513
514
513
510
514
514
513
507
510
514
509
510
508
513
510
511
512
517
516
511
509
512
511
507
510
514
511
507
506
510
512
513
510
511
512
512
508
508
510
513
510
507
509
515
515
509
506
510
513
512
511
510
512
512
508
507
513
511
513
511
511
514
512
508
509
510
514
511
506
513
514
514
507
507
511
511
509
509
512
513
509
509
513
513
509
507
510
515
511
509
510
515
508
504
510
512
512
507
511
513
510
507
512
517
514
509
511
515
511
511
507
511
512
508
513
516
515
512
509
510
517
508
507
510
513
513
509
511
514
513
511
509
507
509
509
508
508
508
512
515
512
516
516
516
510
507
511
513
513
511
509
513
512
508
512
516
516
513
511
512
507
507
506
511
513
513
509
512
515
516
511
510
513
513
509
505
510
513
512
507
512
514
511
507
507
511
507
509
507
513
515
511
509
513
514
511
508
511
514
509
509
511
511
508
507
514
514
511
508
510
512
509
506
508
512
513
508
508
512
509
510
509
512
515
513
511
508
514
511
508
508
514
515
513
509
510
512
513
507
508
509
511
515
510
510
514
516
513
508
507
513
510
507
506
514
513
508
509
514
516
511
506
510
516
508
507
508
514
510
508
510
516
514
508
511
516
513
506
506
511
515
508
507
513
511
510
508
511
513
510
510
512
515
512
510
510
512
506
510
513
514
510
504
513
515
513
509
509
513
513
507
506
509
515
513
507
513
512
514
508
509
511
515
507
507
512
514
515
509
513
515
518
513
512
513
514
511
510
509
511
513
511
512
513
519
524
536
558
578
586
586
577
565
552
542
544
541
539
532
526
527
528
525
524
522
524
521
516
519
521
523
519
517
519
518
512
509
512
512
510
508
517
523
534
546
562
580
578
583
582
582
575
560
548
537
525
520
514
514
517
513
515
518
518
510
508
511
517
515
507
505
510
511
506
507
512
514
511
511
511
519
525
525
519
522
526
523
518
516
520
521
515
509
515
518
514
508
509
510
510
507
507
512
513
510
507
514
512
512
508
507
512
509
511
511
518
516
507
506
513
519
517
512
519
525
522
521
519
520
514
509
512
514
511
509
512
517
516
513
514
518
517
508
511
516
509
508
508
512
511
508
510
511
511
507
508
514
517
511
511
511
514
516
512
510
512
511
511
507
508
513
511
511
510
512
513
513
508
511
513
514
508
504
510
507
507
507
511
512
511
511
513
514
512
511
508
512
508
506
508
512
515
510
508
512
514
512
509
506
513
510
509
509
514
511
505
510
514
513
511
507
510
513
509
510
508
510
512
508
515
515
509
508
508
508
507
507
509
513
510
509
509
514
508
507
507
512
512
508
512
512
513
512
509
506
512
510
507
505
510
510
508
511
511
514
514
510
506
514
511
508
504
511
513
514
506
505
511
514
512
510
512
516
513
508
510
511
509
503
506
509
512
510
507
511
512
511
506
508
511
511
509
507
511
512
510
510
512
512
509
508
514
513
510
510
510
511
508
507
512
515
509
506
509
512
511
506
511
513
513
505
508
514
510
508
509
511
510
510
508
513
511
509
507
509
513
509
505
508
515
514
507
508
513
513
511
506
507
513
510
505
508
513
514
507
506
513
512
511
507
510
512
512
508
506
511
514
514
511
515
512
510
506
507
511
512
509
507
513
514
512
508
514
515
513
508
507
513
507
508
508
509
510
506
508
513
513
511
511
513
513
508
511
515
515
509
506
509
509
510
509
508
512
509
507
512
515
515
506
507
513
509
511
508
513
514
507
509
516
516
510
509
509
514
508
507
508
513
514
510
508
512
513
511
508
507
509
510
511
508
510
513
513
505
507
508
513
513
508
511
511
510
506
505
509
510
508
509
513
514
508
505
510
515
513
508
507
512
512
505
506
509
511
504
505
510
514
513
506
508
508
509
508
516
515
512
510
511
515
511
509
511
514
515
508
510
515
512
509
515
518
516
510
509
511
512
512
507
512
515
512
511
510
512
514
509
509
509
511
511
506
510
514
512
508
508
512
514
514
518
525
532
530
525
521
523
521
518
511
512
514
509
510
510
514
515
512
509
511
513
514
506
509
516
512
509
508
512
512
509
509
515
515
508
509
512
521
511
510
511
517
517
509
513
516
515
510
508
510
511
508
509
511
513
511
509
514
512
514
516
524
522
518
520
519
518
512
508
510
513
511
508
510
514
513
510
518
514
513
509
511
517
516
511
511
512
516
514
507
511
511
513
510
508
506
510
511
510
508
512
512
512
509
509
511
510
509
508
513
512
511
507
510
515
512
508
509
516
517
512
512
517
515
514
508
511
512
513
507
509
511
514
511
509
512
511
510
511
512
512
509
511
512
515
509
506
510
513
510
507
511
516
513
509
512
514
513
509
511
513
509
508
509
515
513
508
506
512
514
512
507
511
514
511
507
509
512
511
511
508
513
512
513
508
511
516
513
509
507
511
514
511
509
512
511
511
508
509
514
511
508
507
512
515
515
508
510
511
510
506
509
511
510
506
506
509
512
508
505
511
513
511
505
509
513
510
504
507
511
514
510
508
516
512
510
508
510
514
510
511
510
515
512
506
511
507
509
508
508
515
514
505
511
512
512
505
505
511
507
506
506
510
514
512
509
513
512
513
506
505
513
508
508
506
511
512
511
510
516
516
514
508
509
512
512
513
507
507
513
512
504
510
512
514
510
508
509
510
511
508
506
511
513
507
510
510
514
509
509
512
510
507
505
508
512
513
510
513
516
514
510
508
515
511
507
504
511
513
509
509
511
513
509
505
509
513
506
507
508
511
511
507
510
510
512
507
508
513
515
511
509
511
513
508
507
513
516
508
507
510
513
509
509
509
514
513
506
506
510
511
511
509
510
511
512
509
508
511
514
513
507
511
514
515
510
509
510
512
509
506
510
513
514
509
510
516
513
509
508
510
516
509
508
509
514
509
508
512
515
511
508
509
514
514
508
508
511
513
513
511
514
512
507
508
512
513
512
512
511
513
509
504
510
514
511
510
511
512
514
508
514
513
513
510
510
513
510
507
507
509
515
512
508
514
516
511
509
506
510
514
506
503
506
511
514
507
511
514
516
511
509
511
513
509
511
509
512
512
508
514
514
515
511
505
508
517
514
509
508
515
519
513
516
520
522
515
510
515
515
509
506
508
513
514
510
514
512
515
509
509
512
508
507
509
511
513
509
507
514
513
512
509
510
512
508
508
510
512
510
509
511
511
512
510
508
513
515
509
508
508
512
507
509
514
515
512
506
511
512
511
506
509
512
512
506
505
509
512
511
507
506
512
513
507
505
511
512
507
506
510
516
516
512
509
511
514
508
508
509
514
512
509
511
514
513
511
509
511
515
508
509
509
511
509
507
509
513
515
511
512
515
512
509
511
512
513
508
507
510
508
510
508
511
513
510
508
513
513
511
508
510
514
506
507
508
511
510
509
510
513
514
508
509
514
516
509
505
512
516
512
506
514
514
510
510
508
512
512
510
510
515
516
514
509
513
513
511
508
509
512
515
508
508
510
514
514
507
511
517
518
513
508
512
516
509
508
509
512
514
512
513
514
514
512
507
511
514
508
508
513
513
513
510
511
514
512
509
512
514
516
508
511
514
515
513
509
512
512
509
507
512
512
509
511
512
515
512
510
511
514
508
506
507
510
511
508
507
509
515
511
508
512
515
513
510
507
514
513
509
511
512
514
511
507
507
515
514
511
506
512
514
511
506
511
514
511
506
509
516
514
510
506
512
513
510
511
508
514
513
511
508
511
513
513
509
514
515
511
507
507
513
513
508
507
514
512
511
509
512
512
510
510
508
512
510
508
509
516
510
507
508
515
511
509
513
514
514
507
506
512
514
508
507
511
512
512
508
515
515
516
511
509
511
511
507
508
514
514
511
509
518
516
512
509
511
515
511
509
509
510
511
508
510
517
519
517
511
509
512
508
506
508
511
514
511
506
515
513
512
510
507
511
511
508
508
513
515
513
507
513
513
513
509
506
509
514
508
507
510
515
512
506
515
512
512
508
508
513
511
509
510
511
512
512
510
517
515
510
508
512
517
508
509
510
515
511
510
511
511
511
511
511
512
512
508
509
510
514
510
508
510
508
510
508
508
512
512
507
510
513
517
510
510
512
516
514
510
509
510
511
507
511
510
514
511
510
510
513
512
510
507
512
518
512
511
510
511
510
508
506
513
516
512
511
510
512
509
509
513
515
510
508
511
514
513
512
506
512
513
510
508
513
514
510
510
511
516
512
511
510
513
517
509
510
513
513
509
510
514
508
509
509
512
511
509
511
512
512
510
514
514
514
510
508
510
512
509
505
510
511
509
507
509
512
515
510
508
508
512
514
507
508
513
513
513
508
508
515
510
509
508
512
512
512
510
515
513
513
507
509
513
508
508
505
511
516
511
509
515
515
514
508
508
514
507
507
508
513
513
509
509
513
516
513
507
510
514
508
506
511
515
510
507
514
511
508
508
514
517
508
511
512
518
514
509
510
514
508
507
505
511
515
509
512
514
513
510
512
513
510
507
507
510
516
515
508
511
512
513
509
508
512
514
510
509
509
514
517
513
509
509
512
513
509
508
513
514
510
509
512
514
513
511
511
515
511
505
506
513
514
512
511
513
516
511
507
509
515
511
506
507
514
514
512
508
511
512
511
509
511
516
512
509
507
513
511
510
509
512
512
509
512
514
517
511
506
511
512
507
507
511
512
510
507
514
515
512
508
509
515
511
509
512
515
512
508
509
513
512
508
510
511
513
508
509
510
513
513
509
508
516
513
510
507
513
515
511
507
511
513
514
507
508
514
516
513
509
509
512
508
507
509
511
513
510
509
514
515
513
508
510
514
512
509
511
515
514
511
508
513
515
512
508
513
516
510
510
511
516
511
508
509
512
511
509
509
512
515
509
512
513
511
505
509
514
508
508
508
511
513
510
511
514
514
511
509
511
513
506
507
511
516
513
509
512
514
515
511
509
511
513
509
509
510
512
513
508
510
513
514
512
508
508
514
509
506
509
514
516
510
505
507
512
515
509
509
512
507
508
504
509
516
514
510
514
515
512
509
512
514
511
509
508
514
519
512
510
513
515
511
509
510
513
510
509
508
512
514
510
510
511
512
506
509
514
515
510
509
511
512
510
508
513
512
511
511
513
514
513
511
511
513
514
510
509
515
513
510
509
511
515
510
510
510
516
514
509
509
514
511
510
510
511
512
512
507
508
514
515
509
508
515
516
512
507
512
511
511
509
510
512
515
512
508
516
513
511
508
511
514
515
511
510
512
514
511
508
515
512
508
506
512
513
508
511
512
514
511
507
510
515
508
507
510
516
515
508
514
513
515
509
508
514
511
509
511
509
512
509
509
515
512
509
505
509
513
509
508
510
513
512
511
512
514
513
513
509
513
512
508
507
508
514
513
509
507
514
516
515
508
506
515
512
511
509
512
512
510
509
515
512
513
507
506
513
510
505
508
511
517
512
506
512
516
515
509
508
514
516
510
509
512
514
511
507
513
512
511
507
510
514
511
509
512
515
512
509
510
514
511
508
513
514
513
506
509
513
515
511
509
514
513
506
505
512
512
507
509
514
515
514
504
506
513
511
512
509
511
512
510
508
511
513
512
510
509
510
510
511
509
510
512
514
511
508
510
514
510
508
511
511
512
511
507
510
514
510
511
513
514
511
507
510
514
512
507
509
514
513
506
508
510
514
510
507
508
512
510
507
510
517
514
510
516
514
515
508
504
511
510
508
505
510
514
513
509
513
515
513
507
509
514
508
509
509
513
513
507
511
516
513
511
508
510
514
507
506
506
512
513
509
514
516
514
512
509
512
515
511
512
512
515
514
507
511
512
512
510
509
510
514
508
507
505
514
513
511
513
518
516
510
504
507
514
509
510
510
514
514
509
509
514
511
513
509
510
511
506
507
511
514
516
509
509
514
515
509
510
511
514
510
509
509
513
514
511
513
517
512
507
510
514
513
509
507
510
510
507
507
515
515
509
510
512
514
508
509
511
513
509
508
506
513
514
510
507
513
512
511
508
510
514
513
508
506
511
512
510
509
512
516
511
507
508
510
513
510
508
515
519
514
507
510
513
513
510
511
514
515
512
509
509
511
514
507
510
515
511
506
509
514
513
507
509
514
513
509
509
511
513
510
508
509
514
513
510
510
513
508
511
511
514
514
509
515
515
512
508
511
515
509
509
510
513
515
511
509
512
514
510
506
511
515
511
511
513
514
512
508
509
514
514
511
506
506
512
512
506
508
513
518
511
509
513
514
513
507
506
508
510
510
509
508
514
514
509
512
512
512
510
511
513
512
508
507
510
511
513
509
514
516
517
513
509
510
513
511
509
511
514
510
507
514
512
512
509
509
516
509
508
511
513
512
509
507
514
513
509
511
511
514
509
508
509
512
509
509
511
516
515
509
511
514
511
507
512
513
513
508
511
516
509
509
507
512
515
514
507
511
515
512
508
509
511
513
512
510
510
513
513
507
510
514
515
511
508
511
512
512
510
511
512
512
509
510
513
515
507
503
510
515
515
512
511
514
513
510
509
511
515
510
507
510
515
515
511
510
513
513
508
511
513
512
507
509
514
510
508
505
511
517
513
511
514
512
509
509
513
514
505
507
514
515
511
507
516
512
511
509
513
512
510
511
511
513
514
509
509
516
513
510
508
509
511
512
510
509
510
513
513
505
512
516
512
506
506
510
514
507
508
509
516
514
508
507
511
514
512
509
512
515
507
509
508
516
517
510
514
513
515
513
511
511
517
509
509
510
511
509
508
513
511
508
505
511
513
514
511
511
512
513
508
508
514
511
507
504
512
514
509
513
514
515
510
510
514
512
506
509
512
514
511
510
515
516
511
507
506
511
510
509
507
511
514
515
511
515
513
512
507
508
515
510
507
505
508
515
515
510
510
508
512
512
509
512
514
513
510
509
512
514
511
509
512
515
509
509
511
517
509
505
507
513
511
508
509
510
515
510
505
507
514
512
510
509
513
513
509
512
513
514
509
508
513
515
510
509
514
515
511
508
516
517
513
507
513
513
510
509
514
516
510
506
509
510
513
510
509
512
512
507
509
514
514
510
505
508
511
511
510
510
511
513
506
509
511
511
507
505
510
513
512
510
508
512
513
508
510
514
512
508
506
509
511
512
509
510
512
515
508
511
512
516
511
512
510
509
510
506
512
515
514
508
511
513
515
511
508
513
513
513
509
513
515
513
506
510
514
513
509
507
513
507
505
508
513
514
511
509
512
512
508
509
512
514
511
510
510
514
509
509
514
514
511
506
511
517
512
507
505
509
512
511
509
511
514
511
507
509
511
514
509
507
509
514
511
507
509
515
512
506
509
509
516
510
509
509
513
517
510
510
513
515
510
506
510
512
507
508
508
514
512
509
506
512
513
510
506
509
513
508
507
510
515
515
510
511
513
512
509
507
512
514
510
508
511
516
511
505
512
513
513
509
514
514
510
510
513
513
512
507
510
513
510
506
510
515
511
509
512
513
513
510
505
508
516
513
507
504
515
517
511
511
513
512
515
509
508
516
512
512
509
511
511
511
509
509
514
514
508
506
516
509
509
507
510
512
510
509
511
513
514
510
509
516
512
510
509
513
512
510
511
512
514
509
504
507
514
508
508
510
513
513
508
515
514
513
510
508
510
516
511
508
509
513
511
508
514
512
512
506
509
512
507
510
510
512
516
512
509
513
511
512
511
510
516
508
508
511
514
513
510
507
514
514
513
507
509
511
508
504
509
510
510
510
509
512
512
514
508
510
514
515
509
509
510
513
512
508
513
512
515
510
508
511
512
509
506
505
514
516
513
515
511
510
506
508
515
516
510
509
512
515
512
506
514
512
513
508
507
511
511
507
506
513
514
509
506
514
513
510
511
513
513
508
510
511
515
509
506
510
513
514
511
510
514
513
507
510
515
514
509
509
510
512
511
511
511
511
512
507
510
511
514
512
511
511
513
512
510
511
512
514
508
508
510
515
512
507
509
513
514
514
509
512
514
508
508
510
514
514
509
508
512
514
512
510
511
513
509
512
512
513
511
509
511
511
506
507
512
514
512
508
511
512
512
511
508
514
510
507
504
507
512
510
510
515
515
512
510
509
514
509
508
510
514
513
508
511
518
513
508
509
511
511
505
508
511
514
511
507
513
514
515
510
507
512
516
510
508
510
515
515
511
513
514
514
510
507
507
515
509
507
508
514
513
507
507
514
514
512
507
508
514
507
509
507
513
515
511
512
516
518
514
508
511
515
508
507
511
514
515
510
513
515
514
506
508
510
517
510
510
511
513
510
510
513
512
511
509
514
513
510
511
511
515
513
507
509
513
509
509
510
517
513
504
513
514
515
510
507
509
512
510
507
506
511
515
511
510
509
513
510
507
511
516
511
509
509
515
514
511
512
515
515
510
507
509
515
513
508
506
511
514
515
511
511
511
513
508
505
514
510
507
508
513
517
510
511
513
513
510
506
508
514
507
507
508
512
513
506
512
512
512
508
509
513
513
508
506
511
512
509
507
515
514
510
506
510
514
507
507
508
514
512
508
505
510
510
512
509
510
513
507
506
509
511
512
509
506
513
515
513
506
509
513
510
505
507
511
512
510
508
513
512
515
510
508
511
510
507
506
508
514
513
508
516
513
515
512
507
510
513
508
507
513
516
513
505
509
512
512
507
509
515
514
507
509
512
513
506
506
512
513
513
509
511
516
512
509
509
513
511
510
511
512
510
504
508
513
514
506
511
513
512
505
509
514
509
506
507
514
513
507
506
512
514
508
505
507
511
507
507
508
513
513
508
507
512
513
510
510
509
515
511
509
506
512
513
509
506
512
512
511
509
510
512
511
510
507
509
510
510
507
509
514
515
508
506
510
510
509
509
511
513
512
510
516
514
512
508
509
512
505
505
507
514
511
506
511
512
512
509
508
510
511
510
509
511
512
509
506
514
510
509
505
510
514
513
513
511
514
510
505
508
512
509
508
507
513
513
510
512
512
511
507
505
511
511
506
507
508
514
512
510
516
513
511
510
508
508
514
511
509
509
513
515
511
510
510
512
508
506
505
511
511
510
506
510
514
510
508
508
512
512
509
510
518
509
510
507
510
513
508
509
512
515
513
510
509
514
512
509
511
516
514
509
511
513
513
507
507
511
513
509
508
512
513
509
508
513
513
512
509
510
515
509
507
507
513
509
505
510
514
512
508
506
511
516
509
507
509
513
511
510
512
516
512
508
505
509
515
509
508
508
512
511
509
506
515
514
516
511
510
511
510
508
509
513
515
512
507
514
513
513
507
507
515
516
511
510
513
516
508
507
513
512
512
508
507
513
512
510
511
514
512
508
508
514
514
512
508
506
514
511
508
510
515
514
510
507
514
512
507
510
514
514
509
512
515
515
509
508
513
510
510
505
512
513
513
507
513
513
512
509
510
512
508
509
507
510
513
511
509
510
511
514
508
507
511
513
512
507
507
512
515
509
508
511
515
513
509
508
511
513
512
511
514
515
507
510
514
513
510
509
510
511
509
506
511
515
515
510
511
512
512
511
507
511
511
511
507
513
514
513
512
516
514
513
507
509
511
507
508
509
513
515
508
509
513
515
510
508
510
513
505
508
510
514
511
507
510
512
510
511
514
513
512
506
507
511
516
512
506
513
515
513
508
508
511
513
506
509
512
514
517
511
510
512
512
511
506
510
513
509
506
505
515
516
509
506
509
513
511
508
512
515
510
507
506
513
513
511
507
510
512
513
509
511
516
510
508
508
517
513
509
507
512
512
509
508
513
513
506
508
512
512
510
508
514
512
511
510
514
515
511
510
510
513
509
508
509
514
513
511
508
512
512
511
511
512
513
513
510
511
514
511
509
507
508
511
509
511
510
511
510
510
510
515
512
512
511
509
511
511
510
512
514
514
510
507
514
514
511
509
511
514
516
506
506
512
513
511
509
512
513
511
508
511
513
514
510
508
513
514
509
508
514
512
512
507
509
510
512
514
512
515
509
506
508
513
510
510
509
514
510
506
513
510
511
508
506
513
512
509
511
512
512
507
506
513
516
513
509
510
513
510
506
507
510
512
511
510
514
516
514
507
509
512
514
508
506
508
514
512
507
515
512
515
511
509
510
516
510
507
508
518
515
510
513
512
514
510
507
511
513
510
509
510
516
512
508
513
514
513
507
509
518
515
509
509
513
515
512
508
516
513
511
508
511
513
510
509
511
513
511
506
511
513
510
506
513
514
513
508
510
510
512
509
510
514
508
510
510
509
512
512
511
514
514
513
508
507
514
508
509
508
510
512
511
508
512
516
514
510
505
512
507
508
508
510
513
512
507
510
513
512
509
508
512
511
509
509
510
512
516
509
513
512
513
508
507
513
510
510
506
509
514
513
509
511
513
512
506
505
513
510
508
509
512
518
512
511
511
514
511
507
507
514
507
509
511
512
509
506
511
516
512
508
511
513
511
509
509
512
514
510
510
516
513
511
509
511
512
513
508
506
510
513
511
507
515
514
514
509
509
511
512
507
507
513
516
513
507
509
515
513
508
507
512
515
509
509
509
512
513
508
510
512
512
508
509
512
511
505
505
508
512
511
509
512
515
512
508
508
513
511
507
506
512
512
509
509
516
518
512
512
516
517
512
508
508
516
512
510
512
515
511
508
508
514
514
508
512
513
516
509
507
514
514
511
510
514
515
512
506
513
512
513
509
509
514
514
508
512
512
515
512
505
513
512
512
508
506
511
510
507
507
509
514
511
509
514
514
517
511
508
510
512
504
504
508
515
514
508
514
512
512
509
504
510
511
509
509
510
514
514
507
514
514
512
508
511
515
512
508
508
512
515
510
506
514
514
511
509
509
513
510
509
510
514
511
508
512
512
510
507
512
514
513
509
509
509
515
513
508
511
505
510
508
510
515
515
508
512
515
516
510
507
511
510
511
509
512
512
514
506
508
510
514
510
508
512
513
513
512
510
514
512
507
508
511
515
512
509
511
514
513
509
507
509
513
511
507
511
515
511
507
511
512
513
511
511
516
516
510
511
512
515
508
509
514
512
509
506
513
514
511
510
513
513
512
506
510
515
508
508
510
515
510
509
510
515
513
509
512
512
514
507
505
511
514
512
510
513
514
514
510
512
512
513
507
506
508
510
511
508
509
517
514
511
508
509
512
506
507
510
515
516
510
509
514
514
512
510
510
513
510
511
511
512
513
511
511
517
516
514
509
510
514
508
507
508
514
515
512
510
515
514
508
503
506
514
508
507
509
512
511
509
513
513
511
509
508
511
511
510
510
514
513
510
507
513
510
510
509
511
513
510
513
511
514
509
506
508
514
511
510
509
515
514
509
510
511
512
510
510
511
516
512
512
511
514
515
513
512
510
513
513
511
509
515
515
511
508
510
514
512
507
505
509
512
510
509
512
514
511
508
511
514
515
510
506
513
514
510
509
513
515
515
511
511
512
512
507
509
514
514
510
507
513
517
515
510
511
514
513
509
510
515
513
506
510
515
514
511
511
514
513
507
511
512
514
508
507
513
512
509
509
510
514
510
508
516
515
513
509
508
511
511
508
507
511
514
512
507
513
513
515
507
508
513
512
509
508
511
513
511
506
517
516
517
509
505
511
513
509
508
511
516
514
509
516
514
514
511
510
511
512
507
509
510
514
510
508
514
511
511
508
509
513
510
510
509
512
512
512
512
517
515
511
508
509
513
509
511
511
516
510
506
506
511
510
508
509
512
512
509
514
513
512
506
507
516
511
509
507
512
513
512
507
513
514
512
507
507
513
510
511
507
511
515
515
510
511
510
513
510
509
509
514
513
511
507
511
514
511
509
509
514
514
508
508
512
514
514
510
514
514
509
508
514
520
517
512
513
513
514
511
511
512
515
511
510
513
514
510
507
511
511
511
506
510
513
513
509
512
514
510
505
507
512
509
509
511
517
516
511
510
511
510
509
508
513
516
511
510
511
513
513
510
513
517
514
511
511
514
516
511
509
509
513
513
508
512
515
514
512
509
512
514
508
507
506
512
515
512
509
512
512
511
507
510
513
512
509
506
514
517
510
507
512
514
513
510
512
514
510
511
507
510
514
511
510
514
511
510
508
508
515
509
509
511
516
514
508
516
514
511
508
510
515
514
510
509
514
517
514
509
513
509
507
507
514
514
511
511
513
514
511
507
511
512
506
507
511
516
513
510
514
511
513
509
507
513
516
512
508
509
512
512
509
511
513
515
509
507
512
516
511
508
508
514
514
507
512
514
515
511
508
511
516
509
508
509
516
514
509
512
513
514
512
507
511
515
511
511
511
514
514
511
512
512
511
508
506
513
512
509
510
511
518
516
509
512
516
517
510
508
514
513
509
512
514
513
507
510
514
512
510
509
514
514
508
511
512
514
507
508
512
518
515
510
510
512
512
505
504
511
514
511
507
509
514
515
512
509
509
515
510
506
511
516
515
511
508
513
514
512
507
512
515
511
508
509
513
515
509
508
513
513
510
507
510
516
510
508
511
516
511
507
507
513
514
511
509
512
512
509
505
508
514
512
507
508
509
511
508
508
512
510
509
512
516
515
506
506
512
509
508
508
514
516
509
511
513
511
510
507
512
514
508
510
510
513
515
511
511
514
514
510
508
510
513
509
507
510
514
513
508
513
514
512
511
510
508
514
507
507
509
514
514
512
514
516
517
513
510
508
511
511
509
506
512
517
510
512
515
513
512
508
510
515
510
511
513
516
511
508
512
516
514
510
509
512
513
507
506
508
513
514
511
513
516
514
509
507
511
511
509
508
513
516
510
508
514
514
508
509
512
517
512
513
512
515
510
507
510
512
510
512
512
516
513
509
512
515
516
513
505
510
512
510
509
506
513
513
508
509
511
514
513
512
510
515
518
514
510
510
514
517
511
510
513
514
510
509
513
515
513
509
512
514
511
510
507
513
515
512
508
512
511
510
509
513
514
513
510
509
515
513
511
511
514
510
508
508
513
511
507
515
514
515
509
509
515
510
509
510
514
513
510
508
514
515
513
508
509
514
508
509
511
512
513
510
508
518
517
510
506
510
513
509
509
511
513
514
511
508
515
516
512
507
508
514
511
506
505
511
513
512
510
516
513
514
511
510
513
509
505
507
514
518
512
509
514
512
512
508
509
512
511
506
507
511
513
512
510
514
518
516
509
510
514
511
509
510
514
512
509
509
516
513
510
511
515
513
508
511
513
516
509
507
512
511
508
507
513
512
510
509
511
514
514
510
507
512
508
508
509
512
516
511
510
510
514
514
510
507
510
514
513
508
509
510
514
508
509
510
515
512
507
510
515
513
509
510
511
513
510
509
512
516
510
508
507
517
515
510
509
512
512
508
511
513
515
510
510
513
514
514
510
512
512
510
507
508
511
516
510
509
514
515
513
508
509
515
514
510
513
514
515
510
509
511
506
507
506
514
514
511
510
518
517
514
511
513
516
508
507
510
515
515
509
513
516
512
509
506
511
512
507
506
506
512
513
509
510
513
513
514
509
510
514
510
509
509
514
514
511
507
514
515
514
510
508
514
510
509
506
511
518
512
510
512
512
514
508
510
515
508
506
510
512
515
511
507
511
515
511
508
509
515
510
509
510
514
513
510
512
515
512
508
508
511
511
509
508
512
515
509
507
513
512
511
511
511
513
511
512
513
514
511
508
508
514
512
509
508
513
513
509
509
513
516
511
507
509
515
514
511
507
509
515
514
509
507
511
512
509
507
513
514
512
509
510
512
514
510
511
513
514
514
508
511
517
514
511
511
514
514
510
509
511
514
512
509
513
520
517
509
514
515
512
511
511
512
511
507
508
516
514
511
508
514
512
508
513
513
517
510
509
513
514
512
508
512
514
512
507
511
513
512
507
511
517
512
510
510
514
512
506
507
512
516
514
510
513
517
508
509
513
512
511
512
509
518
518
513
508
508
512
512
511
510
515
517
513
509
515
515
514
510
509
512
511
507
509
513
517
513
505
512
514
515
508
510
514
513
508
508
512
517
512
506
514
516
515
512
513
514
510
511
511
514
513
507
510
514
509
510
510
512
514
508
509
512
511
508
510
513
510
510
508
511
516
514
509
512
513
515
508
509
515
511
511
507
509
513
511
511
513
516
516
510
511
511
510
510
505
511
515
514
509
510
512
513
507
507
511
514
512
511
513
517
513
509
512
516
515
510
506
509
512
513
511
509
514
516
510
509
513
516
510
508
514
514
513
510
514
516
515
508
512
512
511
506
510
515
512
511
509
512
515
513
508
512
512
513
509
510
515
510
508
511
514
515
509
513
516
510
506
510
514
512
508
511
514
511
508
509
512
512
511
507
512
515
514
509
510
510
513
511
509
516
517
514
510
506
511
515
510
509
508
514
517
512
511
512
512
513
510
511
517
510
511
511
513
512
507
511
513
514
511
508
511
515
508
506
510
516
511
510
514
513
509
508
507
511
511
509
510
514
512
509
508
517
509
508
509
511
510
507
515
514
515
510
507
512
513
508
508
512
516
511
508
513
513
512
508
510
515
510
510
507
512
511
514
511
514
515
512
508
511
514
510
507
509
513
517
512
509
515
512
512
508
510
513
514
510
509
512
516
514
510
509
509
514
509
507
509
512
511
510
511
514
512
510
514
514
516
512
510
513
514
510
509
509
515
512
509
516
513
517
510
511
513
511
506
508
511
512
511
508
513
517
514
512
514
515
507
508
513
516
511
511
513
513
512
507
511
514
515
510
512
515