JezK
Edit File: autorules.7633eb4b3f35beb320d1c3071e993d32e3f203fbc3704ee072f5ba05b5e5107d.srule
� `��Q � � K � w � � � � � � � � � j � C uuuuL|EL��S��S����]kc�!�S��,������������������ <H<H<HT������%N,�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Ysm��S��S��S��S��S��S��Ss���#��#��#��#��3I=���پ� ]d3"d3"d3"d3"t��S��SƇ�V��V��V��V��V��V��V��V��V��V�� ��_��Z��Z��Z��Z��Z����Y��Y��YҿmӤ"��"��%��|�e��"��)��<��x��6��4��)��4��%��/��$��<��>��!��+����K��K��K�x��w��x��i��f��i��f��i��f��i��f��i��f��i��f��i�f�i�f�i�f�i�f�i�f�i�f�i�f�i�s��|�s��|�s�|�s�|�s�|�s�|�s�|�s�|�s�|�s�|�s�|�s�|�s�|�s�|�s�i�f�i�s��|�s��|�s��|�s��|�s��|�s��|�s��|�s��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�k��d�k��b�m��b�m��b�m��b�m��b�m��b�m��b�m��b�k��d�k��d�k��d�k��d�k��d�k��d�k��d�k��d�k��d�k��d�k��d�~�q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��w�x��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�~��q�k��q�k��q�k��q�k��q�k��q�k��q�k��q�k��q�k��q�k��q�k��q��3������������������������������A��A��A�V��V��V��V��F��F��F����I��I��I�O[S��m��/Ñ+++��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+��+�