0
0
0
0
0
0
0
0
585
0
586
0
0
0
0
0
0
0
0
0
0
0
0
662
0
0
0
0
0
0
0
0
0
0
0
0
600
593
591
0
0
598
590
0
0
0
0
588
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
603
0
595
599
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
597
0
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
599
0
0
0
0
0
0
652
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
601
0
0
0
0
0
594
591
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
609
0
0
0
0
0
0
0
0
587
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
576
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
606
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
607
0
0
0
0
0
0
0
0
0
0
0
0
587
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
708
607
602
0
0
0
0
598
0
0
0
0
695
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
602
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
609
0
0
0
0
0
0
0
0
0
638
609
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
710
663
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
642
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
0
0
0
0
0
0
0
603
0
0
610
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
642
0
0
0
0
0
0
0
0
0
0
0
0
0
609
0
0
0
0
633
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
599
0
0
0
0
0
607
0
0
0
0
0
0
0
0
0
0
0
617
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
720
0
0
0
0
0
0
0
0
0
0
0
610
603
0
0
0
0
0
0
0
611
0
0
0
604
606
735
612
0
0
606
0
0
0
0
0
0
0
0
0
613
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
611
0
0
0
0
606
690
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
641
0
0
0
0
0
0
0
0
0
640
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
637
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
599
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
606
0
0
0
0
0
0
737
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
0
0
0
0
0
603
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
667
0
0
0
605
0
0
611
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
596
724
0
0
0
0
0
0
0
0
0
0
0
0
606
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
606
0
0
0
0
582
0
0
0
0
0
0
0
0
0
596
612
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
681
0
585
0
0
621
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
633
0
0
0
599
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
602
0
0
0
0
0
0
0
0
0
769
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
716
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
0
0
608
0
0
0
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
609
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
485
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
592
0
591
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
597
0
590
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
589
0
0
588
0
0
584
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
594
0
690
595
0
0
0
594
0
0
0
0
0
0
0
0
599
586
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
592
0
0
0
0
583
0
0
0
0
0
586
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
587
0
0
0
0
583
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
599
0
605
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
593
0
0
0
0
675
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
588
0
0
0
433
0
0
0
0
0
0
0
0
0
0
0
603
0
0
0
0
0
0
0
0
0
0
603
597
0
0
0
0
0
0
597
0
0
0
0
605
0
0
0
0
0
0
0
0
0
624
0
0
599
0
0
0
0
0
0
596
0
0
0
588
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
599
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
599
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
601
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
741
0
0
601
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
0
0
0
597
0
0
0
598
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
603
654
0
0
0
0
0
0
0
598
0
593
0
594
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
593
0
0
0
603
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
0
636
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
607
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
607
0
0
0
0
0
0
0
0
0
0
0
602
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
604
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
594
0
0
608
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
0
0
0
0
0
0
0
0
0
610
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
607
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
638
609
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
616
0
0
0
0
0
0
0
602
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
606
0
0
0
0
0
607
0
0
0
0
0
0
0
0
0
0
0
0
0
726
602
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
658
0
0
0
0
0
612
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
607
0
0
0
0
659
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
617
736
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
609
0
0
0
0
0
0
0
0
0
0
0
0
0
685
0
0
606
592
725
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
653
0
0
0
747
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
604
605
0
0
0
0
0
591
607
0
0
0
0
0
0
626
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
605
0
0
0
0
0
0
639
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
604
0
669
0
0
0
0
593
624
0
0
603
0
625
0
0
0
0
0
604
601
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
648
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
604
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
696
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
597
0
594
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
596
0
0
593
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
590
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
592
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
593
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
590
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
587
0
0
0
0
0
592
0
0
0
0
0
0
0
615
0
590
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
588
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
436
0
0
0
690
0
0
0
0
0
0
0
0
0
0
585
0
589
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
586
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
668
0
641
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
709
0
592
0
590
588
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
597
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
592
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
594
0
0
588
0
0
0
594
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
587
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
594
0
0
0
0
0
593
0
0
0
0
0
0
0
597
0
593
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
590
633
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
598
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
586
0
0
0
0
589
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
627
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
787
0
0
0
0
0
0
587
579
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
600
0
0
0
0
0
601
601
0
0
0
0
0
600
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
0
500
0
600
0
0
0
0
0
0
0
0
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
726
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
602
0
0
709
597
666
0
593
602
0
0
0
0
0
0
0
0
0
0
0
0
0
0
760
0
0
0
594
596
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
594
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
590
0
0
595
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
745
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
594
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
0
578
0
0
0
0
562
0
0
0
0
0
582
0
0
0
0
593
0
0
0
0
0
0
0
602
0
0
757
0
0
0
0
0
0
616
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
746
0
0
0
0
0
723
0
0
0
0
581
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
631
0
0
0
0
0
0
0
0
0
0
595
616
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
594
0
0
0
0
0
0
0
581
594
0
0
592
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
590
0
0
0
0
0
649
0
0
0
0
592
0
0
593
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
693
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
622
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
615
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
593
0
0
0
586
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
766
0
0
588
0
0
585
592
0
0
0
0
0
623
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
590
584
587
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
738
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
709
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
609
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
565
0
0
0
0
0
0
0
0
586
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
589
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
577
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
646
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
567
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
702
0
654
0
666
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
578
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
0
0
589
0
581
0
0
577
0
580
0
0
0
0
579
609
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
574
0
0
0
578
0
0
0
578
0
0
580
0
0
0
0
0
0
0
575
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
578
0
0
580
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
616
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
622
583
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
584
0
0
0
0
582
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
588
0
0
0
0
0
0
0
586
0
0
0
0
583
0
0
0
0
0
0
0
0
0
611
0
584
581
0
0
637
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
582
0
0
0
580
0
0
0
0
584
582
0
0
592
0
0
0
0
586
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
580
0
0
0
582
586
0
0
0
0
0
0
0
587
0
0
0
0
590
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
591
0
586
0
0
0
0
0
0
591
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
589
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
570
0
0
0
0
0
0
0
0
0
595
0
590
0
594
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
626
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
568
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
627
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
592
0
0
0
0
0
0
0
0
0
593
0
0
0
593
0
0
0
0
0
0
0
591
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
620
0
599
0
0
0
0
0
0
0
0
0
0
0
0
0
581
604
0
0
0
0
0
601
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
580
632
0
0
0
0
593
0
0
0
601
0
592
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
568
0
0
0
0
0
0
0
0
0
0
0
0
699
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
700
0
0
0
0
0
619
0
0
0
0
609
593
0
0
0
0
0
0
594
594
593
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
576
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
567
0
0
700
0
571
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
598
0
0
0
0
0
0
588
0
0
0
0
0
0
583
591
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
578
0
0
0
0
565
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
540
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
614
0
0
0
0
576
0
0
0
0
0
0
0
0
0
0
592
0
0
0
583
0
599
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
587
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
582
0
0
0
0
0
0
586
0
583
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
694
0
0
0
0
0
0
0
0
0
0
571
0
0
0
0
583
660
0
0
0
0
682
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
580
0
0
585
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
623
0
586
0
0
583
583
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
580
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
593
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
594
0
0
0
592
0
592
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
572
0
573
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
561
581
630
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
578
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
637
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
581
0
0
0
0
0
0
0
0
0
584
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
589
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
577
0
0
0
0
0
595
590
0
0
0
0
0
593
0
0
0
0
0
0
0
0
583
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
770
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
571
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
578
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
599
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
571
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
594
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
583
0
0
0
602
0
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
599
643
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
612
0
0
0
0
593
0
0
0
0
0
0
0
0
595
0
609
0
589
587
0
0
0
0
0
0
594
0
0
0
0
0
574
572
627
0
0
601
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
608
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
667
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
610
0
0
0
0
0
0
0
0
598
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
0
0
0
0
0
0
0
0
0
614
0
0
0
0
600
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
600
0
0
0
0
594
0
591
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
617
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
597
0
627
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
573
0
0
0
0
0
0
0
672
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
586
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
596
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
642
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
607
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
646
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
592
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
580
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
591
0
0
588
0
0
0
0
0
0
0
0
0
0
587
0
0
0
585
0
584
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
768
0
0
0
0
590
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
595
0
0
0
0
0
0
0
0
0
0
0
0
682
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
587
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
579
0
0
0
0
0
0
0
584
0
582
0
0
0
581
0
0
0
0
0
0
0
0
0
586
0
0
0
574
0
0
0
0
582
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
576
0
0
578
0
578
577
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
593
600
0
0
0
0
0
597
0
590
0
0
0
0
0
0
0
0
0
0
623
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
577
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
596
0
0
0
570
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
599
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
599
0
0
0
605
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
609
0
0
0
0
0
631
0
0
0
0
0
0
0
0
0
0
0
0
612
0
0
0
0
0
0
613
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
642
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
0
611
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
605
0
602
0
0
0
0
0
0
0
0
619
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
607
0
0
0
0
575
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
608
0
0
595
0
0
612
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
753
0
0
0
0
0
0
0
572
0
0
0
0
0
0
0
0
0
0
0
0
0
678
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
602
596
0
0
0
0
0
609
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
0
0
607
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
726
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
581
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
571
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
571
0
576
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
578
0
0
0
0
0
0
0
573
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
565
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
571
0
0
587
0
0
0
0
0
572
0
0
0
0
0
0
0
0
0
578
586
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
578
0
577
0
0
0
585
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
652
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
593
0
0
0
590
586
0
0
0
0
0
0
572
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
568
0
0
0
0
0
0
0
0
0
0
578
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
582
0
584
0
0
0
0
0
0
0
0
0
0
0
599
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
570
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
617
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
590
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
617
0
0
0
0
681
609
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
600
574
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
691
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
569
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
725
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
584
590
0
705
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
602
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
594
0
0
0
596
0
0
0
0
0
0
0
0
720
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
567
579
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
576
0
580
575
0
0
0
0
0
0
0
0
0
0
0
0
589
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
574
0
0
0
0
0
0
0
0
590
0
0
580
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
603
0
0
0
0
0
0
0
0
0
0
578
0
0
0
0
0
0
0
570
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
558
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
563
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
588
589
0
0
591
0
0
0
0
0
0
0
0
0
572
0
0
579
0
578
587
0
0
0
572
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
567
565
0
0
0
0
586
0
0
0
0
0
0
0
590
0
0
0
592
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
574
0
573
578
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
602
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
590
0
0
0
574
0
0
0
0
0
663
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
581
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
588
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
584
0
0
0
0
0
585
590
0
582
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
577
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
590
0
0
0
0
0
578
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
591
0
0
0
0
0
589
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
560
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
720
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
569
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
592
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
668
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
599
0
0
0
0
0
0
0
0
0
0
0
0
606
0
0
0
0
0
600
0
0
745
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
566
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
572
0
574
0
0
0
0
604
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
592
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
666
656
0
0
0
0
605
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
605
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
696
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
575
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
584
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
572
581
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
569
0
0
0
0
0
578
0
574
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
574
0
0
578
579
0
0
0
0
0
0
575
0
575
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
566
0
579
0
0
0
0
579
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
566
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
595
0
0
585
0
0
659
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
652
582
580
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
565
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
641
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
584
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
724
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
681
0
0
592
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
601
0
0
0
0
0
0
0
0
0
0
0
0
0
578
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
647
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
607
0
0
0
0
0
0
0
0
0
0
0
580
0
0
0
0
0
0
0
584
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
622
0
0
0
0
0
0
0
0
0
0
0
572
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
596
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
591
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
574
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
589
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
590
584
0
0
0
0
0
0
0
586
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
582
0
0
0
0
0
0
0
0
0
586
0
0
0
0
0
743
0
0
0
566
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
580
0
0
0
0
0
0
0
0
0
0
652
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
586
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
586
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
655
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
580
0
581
0
0
0
0
0
0
0
0
0
0
610
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
572
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
583
0
0
0
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
0
0
0
0
585
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
593
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
602
0
0
0
0
0
0
0
0
587
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
0
0
0
0
0
0
590
0
0
0
0
0
0
584
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
568
0
0
0
0
0
0
0
0
0
0
0
0
0
587
0
0
0
587
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
606
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
643
0
0
0
0
0
0
0
0
0
0
588
0
0
0
0
573
0
0
0
0
592
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
592
0
0
0
0
598
0
0
0
0
0
0
0
0
0
595
0
621
0
602
0
602
0
0
0
0
0
0
0
0
0
0
0
0
0
0
598
647
0
0
0
0
0
0
742
0
0
610
604
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
588
616
0
0
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
603
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
599
0
0
0
705
0
0
0
0
0
0
0
0
651
0
0
0
610
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
581
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
597
0
0
0
0
0
0
0
0
0
0
0
638
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
574
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
753
0
0
0
0
594
0
0
0
0
0
0
0
0
577
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
594
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
577
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
