JezK
Edit File: autorules.f4dacd2e4c5322db46a511bd7188b4e4727a71be33316d5ba959bd3843a6f9ac.srule
�_ X��� � � K � w � � � � � � � � � j � C uuuuL|ELְ ϰ ϰQ�'�'�t�(ȕ(ȕ�������������Y��������j��j��jCx�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�z�}�h��h��h��h��h��h��h��h��K��K��K��K��KQM��O��O��V��V��V��V��Vkj��h��h���>��>��>��>��>��>��>��>��>��>��.��.��/��/��/��.��.��.��=��=��=��)��2���� �� ����BĖIρZڐ[��Z��X��C�W�F��D��L��[��[��^��^��^��N��J��J���������������������������������������������������������������������� ���� ���� ���� ���� ���� ���� ���� ���� ���� ���� ���� ���� ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������}Њ����Z��Z��Z��Z��Z��Z��Z��Z��Z��Z��Z�J��J��J����M��M��M��Z��Z��Z��Z�J��J��J��,d��f��f���M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��M��