JezK
Edit File: autorules.3d981ca6654bc0b0efa3d10d57938f9b15e81a73829591f376b220d53faa828d.srule
�� 3� � � K � w � � � � � � � � � j � C uuuuL|EL�]��]��]�������d6%f6%f ` ` hhhiiiG ���]sss����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������LJ7Ň7Ň7Ň3��3��3��3������������H�!�!��7��7��7��7��7�r�<·<·t�ȭȭȭȭȭȭȭȭȭȭ�7V7V6S6S6S7S7S7$P$P$PT0dU++<+$,9uklb[+`P wC5fBq)C?;A=?Z 6N=4\,7T"1\-<J61G1;M( M"*Mh]BnYBnYBnqt~{qt`{ot`{ot`{ot`{ot`{ot`{ot`eoj`eoj`eoj`eoj`eoj`eoj`eoj`ezupzuezjuezjuezjuezjuezjuezjuezjuezjuezjuezjuezjuezjuezj`eoj`ezupzupzupzupzupzupzupzkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpbymvbympbmpbmpbmpbkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpdkpbymvbykpdkpdkpdkpdkpbykvdykvdykvdykvdykvdykvdykvdykvdykvdykvdykvdy~vdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkedjkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkcdlkc})s s s &Z &Z &Z &Z &Z &Z &Z &Z &Z &Z &Z dJ[dJ[dJ[dLtMLtMLtML!Z\sZ\sZ\sZ dJSlJSlJSl՝�i��i��y,��6��6��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p��p�