����JFIFXX�����    $.' ",#(7),01444'9=82<.342  2!!22222222222222222222222222222222222222222222222222����"��4�� ���,�PG"Z_�4�˷����kjز�Z�,F+��_z�,�© �����zh6�٨�ic�fu���#ډb���_�N�?��wQ���5-�~�I���8����TK<5o�Iv-�����k�_U_�����~b�M��d����Ӝ�U�Hh��?]��E�w��Q���k�{��_}qFW7HTՑ��Y��F�?_�'ϔ��_�Ջt��=||I ��6�έ"�����D���/[�k�9���Y�8ds|\���Ҿp6�Ҵ���]��.����6�z<�v��@]�i%��$j��~�g��J>��no����pM[me�i$[����s�o�ᘨ�˸ nɜG-�ĨU�ycP�3.DB�li�;��hj���x7Z^�N�h������N3u{�:j�x�힞��#M&��jL P@_���� P��&��o8������9�����@Sz6�t7#O�ߋ �s}Yf�T���lmr����Z)'N��k�۞p����w\�Tȯ?�8`�O��i{wﭹW�[�r�� ��Q4F�׊���3m&L�=��h3����z~��#�\�l :�F,j@�� ʱ�wQT����8�"kJO���6�֚l����}���R�>ډK���]��y����&����p�}b��;N�1�m�r$�|��7�>e�@B�TM*-iH��g�D�)� E�m�|�ؘbҗ�a��Ҿ����t4���o���G��*oCN�rP���Q��@z,|?W[0�����:�n,jWiE��W��$~/�hp\��?��{(�0���+�Y8rΟ�+����>S-S����VN;�}�s?.����� w�9��˟<���Mq4�Wv'��{)0�1mB��V����W[�����8�/<� �%���wT^�5���b��)iM� pg�N�&ݝ��VO~�q���u���9� ����!��J27����$O-���! �:�%H��� ـ����y�ΠM=t{!S�� oK8������t<����è:a������[�����ա�H���~��w��Qz`�po�^ ����Q��n� �,uu�C�$ ^���,������8�#��:�6��e�|~���!�3�3.�\0��q��o�4`.|� ����y�Q�`~;�d�ׯ,��O�Zw�������`73�v�܋�<���Ȏ�� ـ4k��5�K�a�u�=9Yd��$>x�A�&�� j0� ���vF��� Y�|�y��� ~�6�@c��1vOp�Ig����4��l�OD���L����� R���c���j�_�uX6��3?nk��Wy�f;^*B� ��@�~a�`��Eu������+���6�L��.ü>��}y���}_�O�6�͐�:�YrG�X��kG�����l^w���~㒶sy��Iu�!� W ��X��N�7BV��O��!X�2����wvG�R�f�T#�����t�/?���%8�^�W�aT��G�cL�M���I��(J����1~�8�?aT ���]����AS�E��(��*E}� 2��#I/�׍qz��^t�̔���b�Yz4x���t�){ OH��+(E��A&�N�������XT��o��"�XC��'���)}�J�z�p� ��~5�}�^����+�6����w��c��Q�|Lp�d�H��}�(�.|����k��c4^�"�����Z?ȕ ��a<�L�!039C� �Eu�C�F�Ew�ç ;�n?�*o���B�8�bʝ���'#Rqf���M}7����]����s2tcS{�\icTx;�\��7K���P���ʇ Z O-��~��c>"��?�������P��E��O�8��@�8��G��Q�g�a�Վ���󁶠�䧘��_%#r�>�1�z�a��eb��qcPѵ��n���#L��� =��׀t� L�7�`��V���A{�C:�g���e@�w1 Xp3�c3�ġ����p��M"'-�@n4���fG��B3�DJ�8[Jo�ߐ���gK)ƛ��$���� ���8�3�����+���� �����6�ʻ���� ���S�kI�*KZlT _`���?��K����QK�d����B`�s}�>���`��*�>��,*@J�d�oF*����弝��O}�k��s��]��y�ߘ��c1G�V���<=�7��7����6�q�PT��tXԀ�!9*4�4Tހ3XΛex�46���Y��D ����� �BdemDa����\�_l,��G�/���֌7���Y�](�xTt^%�GE�����4�}bT���ڹ�����;Y)���B�Q��u��>J/J �⮶.�XԄ��j�ݳ�+E��d ��r�5�_D�1 ��o�� �B�x�΢�#���<��W�����8���R6�@g�M�.��� dr�D��>(otU��@x=��~v���2� ӣ�d�oBd��3�eO�6�㣷�����ݜ6��6Y��Qz`��S��{���\P�~z m5{J/L��1������<�e�ͅPu�b�]�ϔ���'������f�b� Zpw��c`"��i���BD@:)ִ�:�]��hv�E�w���T�l��P���"Ju�}��وV J��G6��. J/�Qgl߭�e�����@�z�Zev2u�)]կ�����7x���s�M�-<ɯ�c��r�v�����@��$�ޮ}lk���a���'����>x��O\�ZFu>�����ck#��&:��`�$�ai�>2Δ����l���oF[h��lE�ܺ�Πk:)���`�� $[6�����9�����kOw�\|���8}������ބ:��񶐕��I�A1/�=�2[�,�!��.}gN#�u����b��� ~��݊��}34q����d�E��Lc��$��"�[q�U�硬g^��%B �z���r�pJ�ru%v\h1Y�ne`ǥ:g���pQM~�^�Xi� ��`S�:V29.�P���V�?B�k�� AEvw%�_�9C�Q����wKekPؠ�\�;Io d�{ ߞo�c1eP����\� `����E=���@K<�Y���eڼ�J���w����{av�F�'�M�@/J��+9p���|]�����Iw &`��8���&M�hg��[�{��Xj��%��Ӓ�$��(����ʹN���<>�I���RY���K2�NPlL�ɀ)��&e����B+ь����( � �JTx���_?EZ� }@ 6�U���뙢ط�z��dWI�n` D����噥�[��uV��"�G&Ú����2g�}&m��?ċ�"����Om#��������� ��{�ON��"S�X��Ne��ysQ���@Fn��Vg���dX�~nj�]J�<�K]:��FW��b�������62�=��5f����JKw��bf�X�55��~J �%^����:�-�QIE��P��v�nZum� z � ~ə ���� ���ة����;�f��\v���g�8�1��f24;�V���ǔ�)����9���1\��c��v�/'Ƞ�w�������$�4�R-��t���� e�6�/�ġ �̕Ecy�J���u�B���<�W�ַ~�w[B1L۲�-JS΂�{���΃������A��20�c#��@ 0!1@AP"#2Q`$3V�%45a6�FRUq��� ����^7ׅ,$n�������+��F�`��2X'��0vM��p�L=������5��8������u�p~���.�`r�����\���O��,ư�0oS ��_�M�����l���4�kv\JSd���x���SW�<��Ae�IX����������$I���w�:S���y���›R��9�Q[���,�5�;�@]�%���u�@ *ro�lbI �� ��+���%m:�͇ZV�����u�̉����θau<�fc�.����{�4Ա� �Q����*�Sm��8\ujqs]{kN���)qO�y�_*dJ�b�7���yQqI&9�ԌK!�M}�R�;������S�T���1���i[U�ɵz�]��U)V�S6���3$K{�ߊ<�(� E]Զ[ǼENg�����'�\?#)Dkf��J���o��v���'�%ƞ�&K�u�!��b�35LX�Ϸ��63$K�a�;�9>,R��W��3�3� d�JeTYE.Mϧ��-�o�j3+y��y^�c�������VO�9NV\nd�1 ��!͕_)a�v;����թ�M�lWR1��)El��P;��yوÏ�u 3�k�5Pr6<�⒲l�!˞*��u־�n�!�l:����UNW ��%��Chx8vL'��X�@��*��)���̮��ˍ��� ���D-M�+J�U�kvK����+�x8��cY������?�Ԡ��~3mo��|�u@[XeY�C�\Kp�x8�oC�C�&����N�~3-H���� ��MX�s�u<`���~"WL��$8ξ��3���a�)|:@�m�\���^�`�@ҷ)�5p+��6���p�%i)P M���ngc�����#0Aruz���RL+xSS?���ʮ}()#�t��mˇ!��0}}y����<�e� �-ή�Ԩ��X������ MF���ԙ~l L.3���}�V뽺�v�����멬��Nl�)�2����^�Iq��a��M��qG��T�����c3#������3U�Ǎ���}��לS�|qa��ڃ�+���-��2�f����/��bz��ڐ�� �ݼ[2�ç����k�X�2�* �Z�d���J�G����M*9W���s{��w���T��x��y,�in�O�v��]���n����P�$�JB@=4�OTI�n��e�22a\����q�d���%�$��(���:���: /*�K[PR�fr\nڙdN���F�n�$�4�[�� U�zƶ����� �mʋ���,�ao�u 3�z� �x��Kn����\[��VFmbE;�_U��&V�Gg�]L�۪&#n%�$ɯ�dG���D�TI=�%+AB�Ru#��b4�1�»x�cs�YzڙJG��f��Il��d�eF'T� iA��T���uC�$����Y��H?����[!G`}���ͪ� �纤Hv\������j�Ex�K���!���OiƸ�Yj�+u-<���'q����uN�*�r\��+�]���<�wOZ.fp�ێ��,-*)V?j-kÊ#�`�r��dV����(�ݽBk�����G�ƛk�QmUڗe��Z���f}|����8�8��a���i��3'J�����~G_�^���d�8w������ R�`(�~�.��u���l�s+g�bv���W���lGc}��u���afE~1�Ue������Z�0�8�=e�� f@/�jqEKQQ�J��oN��J���W5~M>$6�Lt�;$ʳ{���^��6�{����v6���ķܰg�V�cnn �~z�x�«�,2�u�?cE+Ș�H؎�%�Za�)���X>uW�Tz�Nyo����s���FQƤ��$��*�&�LLXL)�1�" L��eO��ɟ�9=���:t��Z���c��Ž���Y?�ӭV�wv�~,Y��r�ۗ�|�y��GaF�����C�����.�+� ���v1���fήJ�����]�S��T��B��n5sW}y�$��~z�'�c ��8 ��� ,! �p��VN�S��N�N�q��y8z˱�A��4��*��'������2n<�s���^ǧ˭P�Jޮɏ�U�G�L�J�*#��<�V��t7�8����TĜ>��i}K%,���)[��z�21z ?�N�i�n1?T�I�R#��m-�����������������1����lA�`��fT5+��ܐ�c�q՝��ʐ��,���3�f2U�եmab��#ŠdQ�y>\��)�SLY����w#��.���ʑ�f��� ,"+�w�~�N�'�c�O�3F�������N<���)j��&��,-� �љ���֊�_�zS���TǦ����w�>��?�������n��U仆�V���e�����0���$�C�d���rP �m�׈e�Xm�Vu� �L��.�bֹ��� �[Դaզ���*��\y�8�Է:�Ez\�0�Kq�C b��̘��cө���Q��=0Y��s�N��S.���3.���O�o:���#���v7�[#߫ ��5�܎�L���Er4���9n��COWlG�^��0k�%<���ZB���aB_���������'=��{i�v�l�$�uC���mƎҝ{�c㱼�y]���W�i ��ߧc��m�H� m�"�"�����;Y�ߝ�Z�Ǔ�����:S#��|}�y�,/k�Ld� TA�(�AI$+I3��;Y*���Z��}|��ӧO��d�v��..#:n��f>�>���ȶI�TX��� 8��y����"d�R�|�)0���=���n4��6ⲑ�+��r<�O�܂~zh�z����7ܓ�HH�Ga롏���nCo�>������a ���~]���R���̲c?�6(�q�;5%� |�uj�~z8R=X��I�V=�|{v�Gj\gc��q����z�؋%M�ߍ����1y��#��@f^���^�>N�����#x#۹��6�Y~�?�dfPO��{��P�4��V��u1E1J �*|���%���JN��`eWu�zk M6���q t[�� ��g�G���v��WIG��u_ft����5�j�"�Y�:T��ɐ���*�;� e5���4����q$C��2d�}���� _S�L#m�Yp��O�.�C�;��c����Hi#֩%+) �Ӎ��ƲV���SYź��g |���tj��3�8���r|���V��1#;.SQ�A[���S������#���`n�+���$��$I �P\[�@�s��(�ED�z���P��])8�G#��0B��[ى��X�II�q<��9�~[Z멜�Z�⊔IWU&A>�P~�#��dp<�?����7���c��'~���5 ��+$���lx@�M�dm��n<=e�dyX��?{�|Aef ,|n3�<~z�ƃ�uۧ�����P��Y,�ӥQ�*g�#먙R�\���;T��i,��[9Qi歉����c>]9�� ��"�c��P�� �Md?٥��If�ت�u��k��/����F��9�c*9��Ǎ:�ØF���z�n*�@|I�ށ9����N3{'��[�'ͬ�Ҳ4��#}��!�V� Fu��,�,mTIk���v C�7v���B�6k�T9��1�*l� '~��ƞF��lU��'�M ����][ΩũJ_�{�i�I�n��$���L�� j��O�dx�����kza۪��#�E��Cl����x˘�o�����V���ɞ�ljr��)�/,�߬h�L��#��^��L�ф�,íMƁe�̩�NB�L�����iL����q�}��(��q��6IçJ$�W�E$��:������=#����(�K�B����zђ <��K(�N�۫K�w��^O{!����)�H���>x�������lx�?>Պ�+�>�W���,Ly!_�D���Ō�l���Q�!�[ �S����J��1��Ɛ�Y}��b,+�Lo�x�ɓ)����=�y�oh�@�꥟/��I��ѭ=��P�y9��� �ۍYӘ�e+�p�Jnϱ?V\SO%�(�t� ���=?MR�[Ș�����d�/ ��n�l��B�7j� ��!�;ӥ�/�[-���A�>�dN�sLj ��,ɪv��=1c�.SQ�O3�U���ƀ�ܽ�E����������̻��9G�ϷD�7(�}��Ävӌ\�y�_0[w ���<΍>����a_��[0+�L��F.�޺��f�>oN�T����q;���y\��bՃ��y�jH�<|q-eɏ�_?_9+P���Hp$�����[ux�K w�Mw��N�ی'$Y2�=��q���KB��P��~������Yul:�[<����F1�2�O���5=d����]Y�sw:���Ϯ���E��j,_Q��X��z`H1,#II ��d�wr��P˂@�ZJV����y$�\y�{}��^~���[:N����ߌ�U�������O��d�����ؾe��${p>G��3c���Ė�lʌ�� ת��[��`ϱ�-W����dg�I��ig2��� ��}s ��ؤ(%#sS@���~���3�X�nRG�~\jc3�v��ӍL��M[JB�T��s3}��j�Nʖ��W����;7��ç?=X�F=-�=����q�ߚ���#���='�c��7���ڑW�I(O+=:uxq�������������e2�zi+�kuG�R��������0�&e�n���iT^J����~\jy���p'dtG��s����O��3����9* �b#Ɋ�� p������[Bws�T�>d4�ۧs���nv�n���U���_�~,�v����ƜJ1��s�� �QIz��)�(lv8M���U=�;����56��G���s#�K���MP�=��LvyGd��}�VwWBF�'�à �?MH�U�g2�� ����!�p�7Q��j��ڴ����=��j�u��� Jn�A s���uM������e��Ɔ�Ҕ�!)'��8Ϣ�ٔ��ޝ(��Vp���צ֖d=�IC�J�Ǡ{q������kԭ�߸���i��@K����u�|�p=..�*+����x�����z[Aqġ#s2a�Ɗ���RR�)*HRsi�~�a &f��M��P����-K�L@��Z��Xy�'x�{}��Zm+���:�)�) IJ�-i�u���� ���ܒH��'�L(7�y�GӜq���� j��� 6ߌg1�g�o���,kر���tY�?W,���p���e���f�OQS��!K�۟cҒA�|ս�j�>��=⬒��˧L[�� �߿2JaB~R��u�:��Q�] �0H~���]�7��Ƽ�I���(}��cq '�ήET���q�?f�ab���ӥvr� �)o��-Q��_'����ᴎo��K������;��V���o��%���~OK ����*��b�f:���-ťIR��`B�5!RB@���ï�� �u �̯e\�_U�_������� g�ES��3�������QT��a����x����U<~�c?�*�#]�MW,[8O�a�x��]�1bC|踤�P��lw5V%�)�{t�<��d��5���0i�XSU��m:��Z�┵�i�"��1�^B�-��P�hJ��&)O��*�D��c�W��vM��)����}���P��ܗ-q����\mmζZ-l@�}��a��E�6��F�@��&Sg@���ݚ�M����� ȹ 4����#p�\H����dYDo�H���"��\��..R�B�H�z_�/5˘����6��KhJR��P�mƶi�m���3�,#c�co��q�a)*Pt����R�m�k�7x�D�E�\Y�閣_X�<���~�)���c[[�BP����6�Yq���S��0����%_����;��Àv�~�| VS؇ ��'O0��F0��\���U�-�d@�����7�SJ*z��3n��y��P����O���������m�~�P�3|Y��ʉr#�C�<�G~�.,! ���bqx���h~0=��!ǫ�jy����l�O,�[B��~��|9��ٱ����Xly�#�i�B��g%�S��������tˋ���e���ې��\[d�t)��.+u�|1 ������#�~Oj����hS�%��i.�~X���I�H�m��0n���c�1uE�q��cF�RF�o���7� �O�ꮧ� ���ۛ{��ʛi5�rw?׌#Qn�TW��~?y$��m\�\o����%W� ?=>S�N@�� �Ʈ���R����N�)�r"C�:��:����� �����#��qb��Y�. �6[��2K����2u�Ǧ�HYR��Q�MV��� �G�$��Q+.>�����nNH��q�^��� ����q��mM��V��D�+�-�#*�U�̒ ���p욳��u:�������IB���m���PV@O���r[b= �� ��1U�E��_Nm�yKbN�O���U�}�the�`�|6֮P>�\2�P�V���I�D�i�P�O;�9�r�mAHG�W�S]��J*�_�G��+kP�2����Ka�Z���H�'K�x�W�MZ%�O�YD�Rc+o��?�q��Ghm��d�S�oh�\�D�|:W������UA�Qc yT�q������~^�H��/��#p�CZ���T�I�1�ӏT����4��"�ČZ�����}��`w�#�*,ʹ�� ��0�i��課�Om�*�da��^gJ݅{���l�e9uF#T�ֲ��̲�ٞC"�q���ߍ ոޑ�o#�XZTp����@ o�8��(jd��xw�]�,f���`~�|,s��^����f�1���t��|��m�򸄭/ctr��5s��7�9Q�4�H1꠲BB@l9@���C�����+�wp�xu�£Yc�9��?`@#�o�mH�s2��)�=��2�.�l����jg�9$�Y�S�%*L������R�Y������7Z���,*=�䷘$�������arm�o�ϰ���UW.|�r�uf����IGw�t����Zwo��~5 ��YյhO+=8fF�)�W�7�L9lM�̘·Y���֘YLf�큹�pRF���99.A �"wz��=E\Z���'a� 2��Ǚ�#;�'}�G���*��l��^"q��+2FQ� hj��kŦ��${���ޮ-�T�٭cf�|�3#~�RJ����t��$b�(R��(����r���dx� >U b�&9,>���%E\� Ά�e�$��'�q't��*�א���ެ�b��-|d���SB�O�O��$�R+�H�)�܎�K��1m`;�J�2�Y~9��O�g8=vqD`K[�F)k�[���1m޼c��n���]s�k�z$@��)!I �x՝"v��9=�ZA=`Ɠi �:�E��)`7��vI��}d�YI�_ �o�:ob���o ���3Q��&D&�2=�� �Ά��;>�h����y.*ⅥS������Ӭ�+q&����j|UƧ����}���J0��WW< ۋS�)jQR�j���Ư��rN)�Gű�4Ѷ(�S)Ǣ�8��i��W52���No˓� ۍ%�5brOn�L�;�n��\G����=�^U�dI���8$�&���h��'���+�(������cȁ߫k�l��S^���cƗjԌE�ꭔ��gF���Ȓ��@���}O���*;e�v�WV���YJ\�]X'5��ղ�k�F��b 6R�o՜m��i N�i����>J����?��lPm�U��}>_Z&�KK��q�r��I�D�Չ~�q�3fL�:S�e>���E���-G���{L�6p�e,8��������QI��h��a�Xa��U�A'���ʂ���s�+טIjP�-��y�8ۈZ?J$��W�P� ��R�s�]��|�l(�ԓ��sƊi��o(��S0��Y� 8�T97.�����WiL��c�~�dxc�E|�2!�X�K�Ƙਫ਼�$((�6�~|d9u+�qd�^3�89��Y�6L�.I�����?���iI�q���9�)O/뚅����O���X��X�V��ZF[�یgQ�L��K1���RҖr@v�#��X�l��F���Нy�S�8�7�kF!A��sM���^rkp�jP�DyS$N���q��nxҍ!U�f�!eh�i�2�m���`�Y�I�9r�6� �TF���C}/�y�^���Η���5d�'��9A-��J��>{�_l+�`��A���[�'��յ�ϛ#w:݅�%��X�}�&�PSt�Q�"�-��\縵�/����$Ɨh�Xb�*�y��BS����;W�ջ_mc�����vt?2}1�;qS�d�d~u:2k5�2�R�~�z+|HE!)�Ǟl��7`��0�<�,�2*���Hl-��x�^����'_TV�gZA�'j� ^�2Ϊ��N7t�����?w�� �x1��f��Iz�C-Ȗ��K�^q�;���-W�DvT�7��8�Z�������� hK�(P:��Q- �8�n�Z���܃e貾�<�1�YT<�,�����"�6{/ �?�͟��|1�:�#g��W�>$����d��J��d�B��=��jf[��%rE^��il:��B���x���Sּ�1հ��,�=��*�7 fcG��#q� �eh?��2�7�����,�!7x��6�n�LC�4x��},Geǝ�tC.��vS �F�43��zz\��;QYC,6����~;RYS/6���|2���5���v��T��i����������mlv��������&� �nRh^ejR�LG�f���? �ۉҬܦƩ��|��Ȱ����>3����!v��i�ʯ�>�v��オ�X3e���_1z�Kȗ\<������!�8���V��]��?b�k41�Re��T�q��mz��TiOʦ�Z��Xq���L������q"+���2ۨ��8}�&N7XU7Ap�d�X��~�׿��&4e�o�F��� �H����O���č�c�� 懴�6���͉��+)��v;j��ݷ�� �UV�� i��� j���Y9GdÒJ1��詞�����V?h��l����l�cGs�ځ�������y�Ac�����\V3�? �� ܙg�>qH�S,�E�W�[�㺨�uch�⍸�O�}���a��>�q�6�n6����N6�q������N ! 1AQaq�0@����"2BRb�#Pr���3C`��Scst���$4D���%Td�� ?���N����a��3��m���C���w��������xA�m�q�m���m������$����4n淿t'��C"w��zU=D�\R+w�p+Y�T�&�պ@��ƃ��3ޯ?�Aﶂ��aŘ���@-�����Q�=���9D��ռ�ѻ@��M�V��P��܅�G5�f�Y<�u=,EC)�<�Fy'�"�&�չ�X~f��l�KԆV��?�� �W�N����=(� �;���{�r����ٌ�Y���h{�١������jW����P���Tc�����X�K�r��}���w�R��%��?���E��m�� �Y�q|����\lEE4���r���}�lsI�Y������f�$�=�d�yO����p�����yBj8jU�o�/�S��?�U��*������ˍ�0������u�q�m [�?f����a�� )Q�>����6#������� ?����0UQ����,IX���(6ڵ[�DI�MNލ�c&���υ�j\��X�R|,4��� j������T�hA�e��^���d���b<����n�� �즇�=!���3�^�`j�h�ȓr��jẕ�c�,ٞX����-����a�ﶔ���#�$��]w�O��Ӫ�1y%��L�Y<�wg#�ǝ�̗`�x�xa�t�w��»1���o7o5��>�m뭛C���Uƃߜ}�C���y1Xνm�F8�jI���]����H���ۺиE@I�i;r�8ӭ����V�F�Շ| ��&?�3|x�B�MuS�Ge�=Ӕ�#BE5G�����Y!z��_e��q�р/W>|-�Ci߇�t�1ޯќd�R3�u��g�=0 5��[?�#͏��q�cf���H��{ ?u�=?�?ǯ���}Z��z���hmΔ�BFTW�����<�q�(v� ��!��z���iW]*�J�V�z��gX֧A�q�&��/w���u�gYӘa���; �i=����g:��?2�dž6�ى�k�4�>�Pxs����}������G�9��3 ���)gG�R<>r h�$��'nc�h�P��Bj��J�ҧH� -��N1���N��?��~��}-q!=��_2hc�M��l�vY%UE�@|�v����M2�.Y[|y�"Eï��K�ZF,�ɯ?,q�?v�M 80jx�"�;�9vk�����+ ֧�� �ȺU��?�%�vcV��mA�6��Qg^M����A}�3�nl� QRN�l8�kkn�'�����(��M�7m9و�q���%ޟ���*h$Zk"��$�9��: �?U8�Sl��,,|ɒ��xH(ѷ����Gn�/Q�4�P��G�%��Ա8�N��!� �&�7�;���eKM7�4��9R/%����l�c>�x;������>��C�:�����t��h?aKX�bhe�ᜋ^�$�Iհ �hr7%F$�E��Fd���t��5���+�(M6�t����Ü�UU|zW�=a�Ts�Tg������dqP�Q����b'�m���1{|Y����X�N��b �P~��F^F:����k6�"�j!�� �I�r�`��1&�-$�Bevk:y���#yw��I0��x��=D�4��tU���P�ZH��ڠ底taP��6����b>�xa����Q�#� WeF��ŮNj�p�J* mQ�N����*I�-*�ȩ�F�g�3 �5��V�ʊ�ɮ�a��5F���O@{���NX��?����H�]3��1�Ri_u��������ѕ�� ����0��� F��~��:60�p�͈�S��qX#a�5>���`�o&+�<2�D����: �������ڝ�$�nP���*)�N�|y�Ej�F�5ټ�e���ihy�Z �>���k�bH�a�v��h�-#���!�Po=@k̆IEN��@��}Ll?j�O������߭�ʞ���Q|A07x���wt!xf���I2?Z��<ץ�T���cU�j��]��陎Ltl �}5�ϓ��$�,��O�mˊ�;�@O��jE��j(�ا,��LX���LO���Ц�90�O �.����a��nA���7������j4 ��W��_ٓ���zW�jcB������y՗+EM�)d���N�g6�y1_x��p�$Lv:��9�"z��p���ʙ$��^��JԼ*�ϭ����o���=x�Lj�6�J��u82�A�H�3$�ٕ@�=Vv�]�'�qEz�;I˼��)��=��ɯ���x �/�W(V���p�����$ �m�������u�����񶤑Oqˎ�T����r��㠚x�sr�GC��byp�G��1ߠ�w e�8�$⿄����/�M{*}��W�]˷.�CK\�ުx���/$�WPw���r� |i���&�}�{�X� �>��$-��l���?-z���g����lΆ���(F���h�vS*���b���߲ڡn,|)mrH[���a�3�ר�[1��3o_�U�3�TC�$��(�=�)0�kgP���� ��u�^=��4 �WYCҸ:��vQ�ר�X�à��tk�m,�t*��^�,�}D*� �"(�I��9R����>`�`��[~Q]�#af��i6l��8���6�:,s�s�N6�j"�A4���IuQ��6E,�GnH��zS�HO�uk�5$�I�4��ؤ�Q9�@��C����wp�BGv[]�u�Ov���0I4���\��y�����Q�Ѹ��~>Z��8�T��a��q�ޣ;z��a���/��S��I:�ܫ_�|������>=Z����8:�S��U�I�J��"IY���8%b8���H��:�QO�6�;7�I�S��J��ҌAά3��>c���E+&jf$eC+�z�;��V����� �r���ʺ������my�e���aQ�f&��6�ND��.:��NT�vm�<- u���ǝ\MvZY�N�NT��-A�>jr!S��n�O 1�3�Ns�%�3D@���`������ܟ 1�^c<���� �a�ɽ�̲�Xë#�w�|y�cW�=�9I*H8�p�^(4���՗�k��arOcW�tO�\�ƍR��8����'�K���I�Q�����?5�>[�}��yU�ײ -h��=��% q�ThG�2�)���"ו3]�!kB��*p�FDl�A���,�eEi�H�f�Ps�����5�H:�Փ~�H�0Dت�D�I����h�F3�������c��2���E��9�H��5�zԑ�ʚ�i�X�=:m�xg�hd(�v����׊�9iS��O��d@0ڽ���:�p�5�h-��t�&���X�q�ӕ,��ie�|���7A�2���O%P��E��htj��Y1��w�Ѓ!����  ���� ࢽ��My�7�\�a�@�ţ�J �4�Ȼ�F�@o�̒?4�wx��)��]�P��~�����u�����5�����7X ��9��^ܩ�U;Iꭆ 5 �������eK2�7(�{|��Y׎ �V��\"���Z�1� Z�����}��(�Ǝ"�1S���_�vE30>���p;� ΝD��%x�W�?W?v����o�^V�i�d��r[��/&>�~`�9Wh��y�;���R��� ;;ɮT��?����r$�g1�K����A��C��c��K��l:�'��3 c�ﳯ*"t8�~l��)���m��+U,z��`(�>yJ�?����h>��]��v��ЍG*�{`��;y]��I�T� ;c��NU�fo¾h���/$���|NS���1�S�"�H��V���T���4��uhǜ�]�v;���5�͠x��'C\�SBpl���h}�N����� A�Bx���%��ޭ�l��/����T��w�ʽ]D�=����K���ž�r㻠l4�S�O?=�k �M:� ��c�C�a�#ha���)�ѐxc�s���gP�iG��{+���x���Q���I= �� z��ԫ+ �8"�k�ñ�j=|����c ��y��CF��/��*9ж�h{ �?4�o� ��k�m�Q�N�x��;�Y��4膚�a�w?�6�>e]�����Q�r�:����g�,i"�����ԩA�*M�<�G��b�if��l^M��5� �Ҩ�{����6J��ZJ�����P�*�����Y���ݛu�_4�9�I8�7���������,^ToR���m4�H��?�N�S�ѕw��/S��甍�@�9H�S�T��t�ƻ���ʒU��*{Xs�@����f�����֒Li�K{H�w^���������Ϥm�tq���s� ���ք��f:��o~s��g�r��ט� �S�ѱC�e]�x���a��) ���(b-$(�j>�7q�B?ӕ�F��hV25r[7 Y� }L�R��}����*sg+��x�r�2�U=�*'WS��ZDW]�WǞ�<��叓���{�$�9Ou4��y�90-�1�'*D`�c�^o?(�9��u���ݐ��'PI&� f�Jݮ�������:wS����jfP1F:X �H�9dԯ���˝[�_54 �}*;@�ܨ�� ð�yn�T���?�ןd�#���4rG�ͨ��H�1�|-#���Mr�S3��G�3�����)�.᧏3v�z֑��r����$G"�`j �1t��x0<Ɔ�Wh6�y�6��,œ�Ga��gA����y��b��)��h�D��ß�_�m��ü �gG;��e�v��ݝ�nQ� ��C����-�*��o���y�a��M��I�>�<���]obD��"�:���G�A��-\%LT�8���c�)��+y76���o�Q�#*{�(F�⽕�y����=���rW�\p���۩�c���A���^e6��K������ʐ�cVf5$�'->���ՉN"���F�"�UQ@�f��Gb~��#�&�M=��8�ט�JNu9��D��[̤�s�o�~������ G��9T�tW^g5y$b��Y'��س�Ǵ�=��U-2 #�MC�t(�i� �lj�@Q 5�̣i�*�O����s�x�K�f��}\��M{E�V�{�υ��Ƈ�����);�H����I��fe�Lȣr�2��>��W�I�Ȃ6������i��k�� �5�YOxȺ����>��Y�f5'��|��H+��98pj�n�.O�y�������jY��~��i�w'������l�;�s�2��Y��:'lg�ꥴ)o#'Sa�a�K��Z� �m��}�`169�n���"���x��I ��*+� }F<��cГ���F�P�������ֹ*�PqX�x۩��,� ��N�� �4<-����%����:��7����W���u�`����� $�?�I��&����o��o��`v�>��P��"��l���4��5'�Z�gE���8���?��[�X�7(��.Q�-��*���ތL@̲����v��.5���[��=�t\+�CNܛ��,g�SQnH����}*F�G16���&:�t��4ُ"A��̣��$�b �|����#rs��a�����T�� ]�<�j��BS�('$�ɻ� �wP;�/�n��?�ݜ��x�F��yUn�~mL*-�������Xf�wd^�a�}��f�,=t�׵i�.2/wpN�Ep8�OР���•��R�FJ� 55TZ��T �ɭ�<��]��/�0�r�@�f��V��V����Nz�G��^���7hZi����k��3�,kN�e|�vg�1{9]_i��X5y7� 8e]�U����'�-2,���e"����]ot�I��Y_��n�(JҼ��1�O ]bXc���Nu�No��pS���Q_���_�?i�~�x h5d'�(qw52] ��'ޤ�q��o1�R!���`ywy�A4u���h<קy���\[~�4�\ X�Wt/� 6�����n�F�a8��f���z �3$�t(���q��q�x��^�XWeN'p<-v�!�{�(>ӽDP7��ո0�y)�e$ٕv�Ih'Q�EA�m*�H��RI��=:��� ���4牢) �%_iN�ݧ�l]� �Nt���G��H�L��� ɱ�g<���1V�,�J~�ٹ�"K��Q�� 9�HS�9�?@��k����r�;we݁�]I�!{ �@�G�[�"��`���J:�n]�{�cA�E����V��ʆ���#��U9�6����j�#Y�m\��q�e4h�B�7��C�������d<�?J����1g:ٳ���=Y���D�p�ц� ׈ǔ��1�]26؜oS�'��9�V�FVu�P�h�9�xc�oq�X��p�o�5��Ա5$�9W�V(�[Ak�aY錎qf;�'�[�|���b�6�Ck��)��#a#a˙��8���=äh�4��2��C��4tm^ �n'c���]GQ$[Wҿ��i���vN�{Fu ��1�gx��1┷���N�m��{j-,��x�� Ūm�ЧS�[�s���Gna���䑴�� x�p 8<������97�Q���ϴ�v�aϚG��Rt�Һ׈�f^\r��WH�JU�7Z���y)�vg=����n��4�_)y��D'y�6�]�c�5̪�\� �PF�k����&�c;��cq�$~T�7j ���nç]�<�g ":�to�t}�159�<�/�8������m�b�K#g'I'.W�����6��I/��>v��\�MN��g���m�A�yQL�4u�Lj�j9��#44�t��l^�}L����n��R��!��t��±]��r��h6ٍ>�yҏ�N��fU�� ���� Fm@�8}�/u��jb9������he:A�y�ծw��GpΧh�5����l}�3p468��)U��d��c����;Us/�֔�YX�1�O2��uq�s��`hwg�r~�{ R��mhN��؎*q 42�*th��>�#���E����#��Hv�O����q�}�����6�e��\�,Wk�#���X��b>��p}�դ��3���T5��†��6��[��@�P�y*n��|'f�֧>�lư΂�̺����SU�'*�q�p�_S�����M�� '��c�6�����m�� ySʨ;M��r���Ƌ�m�Kxo,���Gm�P��A�G�:��i��w�9�}M(�^�V��$ǒ�ѽ�9���|���� �a����J�SQ�a���r�B;����}���ٻ֢�2�%U���c�#�g���N�a�ݕ�'�v�[�OY'��3L�3�;,p�]@�S��{ls��X�'���c�jw�k'a�.��}�}&�� �dP�*�bK=ɍ!����;3n�gΊU�ߴmt�'*{,=SzfD� A��ko~�G�aoq�_mi}#�m�������P�Xhύ����mxǍ�΂���巿zf��Q���c���|kc�����?���W��Y�$���_Lv����l߶��c���`?����l�j�ݲˏ!V��6����U�Ђ(A���4y)H���p�Z_�x��>���e��R��$�/�`^'3qˏ�-&Q�=?��CFVR �D�fV�9��{�8g�������n�h�(P"��6�[�D���< E�����~0<@�`�G�6����Hг�cc�� �c�K.5��D��d�B���`?�XQ��2��ٿyqo&+�1^� DW�0�ꊩ���G�#��Q�nL3��c���������/��x ��1�1[y�x�პCW��C�c�UĨ80�m�e�4.{�m��u���I=��f�����0QRls9���f���������9���~f�����Ǩ��a�"@�8���ȁ�Q����#c�ic������G��$���G���r/$W�(��W���V�"��m�7�[m�A�m����bo��D� j����۳� l���^�k�h׽����� ��#� iXn�v��eT�k�a�^Y�4�BN��ĕ��0 !01@Q"2AaPq3BR������?���@4�Q�����T3,���㺠�W�[=JK�Ϟ���2�r^7��vc�:�9 �E�ߴ�w�S#d���Ix��u��:��Hp��9E!�� V 2;73|F��9Y���*ʬ�F��D����u&���y؟��^EA��A��(ɩ���^��GV:ݜDy�`��Jr29ܾ�㝉��[���E;Fzx��YG��U�e�Y�C���� ����v-tx����I�sם�Ę�q��Eb�+P\ :>�i�C'�;�����k|z�رn�y]�#ǿb��Q��������w�����(�r|ӹs��[�D��2v-%��@;�8<a���[\o[ϧw��I!��*0�krs)�[�J9^��ʜ��p1)� "��/_>��o��<1����A�E�y^�C��`�x1'ܣn�p��s`l���fQ��):�l����b>�Me�jH^?�kl3(�z:���1ŠK&?Q�~�{�ٺ�h�y���/�[��V�|6��}�KbX����mn[-��7�5q�94�������dm���c^���h� X��5��<�eޘ>G���-�}�دB�ޟ� ��|�rt�M��V+�]�c?�-#ڛ��^ǂ}���Lkr���O��u�>�-D�ry� D?:ޞ�U��ǜ�7�V��?瓮�"�#���r��չģVR;�n���/_� ؉v�ݶe5d�b9��/O��009�G���5n�W����JpA�*�r9�>�1��.[t���s�F���nQ� V 77R�]�ɫ8����_0<՜�IF�u(v��4��F�k�3��E)��N:��yڮe��P�`�1}�$WS��J�SQ�N�j�ٺ��޵�#l���ј(�5=��5�lǏmoW�v-�1����v,W�mn��߀$x�<����v�j(����c]��@#��1������Ǔ���o'��u+����;G�#�޸��v-lη��/(`i⣍Pm^���ԯ̾9Z��F��������n��1��� ��]�[��)�'������:�֪�W��FC����� �B9،!?���]��V��A�Վ�M��b�w��G F>_DȬ0¤�#�QR�[V��kz���m�w�"��9ZG�7'[��=�Q����j8R?�zf�\a�=��O�U����*oB�A�|G���2�54 �p��.w7� �� ��&������ξxGHp� B%��$g�����t�Џ򤵍z���HN�u�Я�-�'4��0��;_��3 !01"@AQa2Pq#3BR������?��ʩca��en��^��8���<�u#��m*08r��y�N"�<�Ѳ0��@\�p��� �����Kv�D��J8�Fҽ� �f�Y��-m�ybX�NP����}�!*8t(�OqѢ��Q�wW�K��ZD��Δ^e��!� ��B�K��p~�����e*l}z#9ң�k���q#�Ft�o��S�R����-�w�!�S���Ӥß|M�l޶V��!eˈ�8Y���c�ЮM2��tk���� ������J�fS����Ö*i/2�����n]�k�\���|4yX�8��U�P.���Ы[���l��@"�t�<������5�lF���vU�����W��W��;�b�cД^6[#7@vU�xgZv��F�6��Q,K�v��� �+Ъ��n��Ǣ��Ft���8��0��c�@�!�Zq s�v�t�;#](B��-�nῃ~���3g������5�J�%���O������n�kB�ĺ�.r��+���#�N$?�q�/�s�6��p��a����a��J/��M�8��6�ܰ"�*������ɗud"\w���aT(����[��F��U՛����RT�b���n�*��6���O��SJ�.�ij<�v�MT��R\c��5l�sZB>F��<7�;EA��{��E���Ö��1U/�#��d1�a�n.1ě����0�ʾR�h��|�R��Ao�3�m3 ��%�� ���28Q� ��y��φ���H�To�7�lW>����#i`�q���c����a��� �m,B�-j����݋�'mR1Ήt�>��V��p���s�0IbI�C.���1R�ea�����]H�6����������4B>��o��](��$B���m�����a�!=��?�B� K�Ǿ+�Ծ"�n���K��*��+��[T#�{E�J�S����Q�����s�5�:�U�\wĐ�f�3����܆&�)����I���Ԇw��E T�lrTf6Q|R�h:��[K�� �z��c֧�G�C��%\��_�a�84��HcO�bi��ؖV��7H �)*ģK~Xhչ0��4?�0��� �E<���}3���#���u�?�� ��|g�S�6ꊤ�|�I#Hڛ� �ա��w�X��9��7���Ŀ%�SL��y6č��|�F�a 8���b��$�sק�h���b9RAu7�˨p�Č�_\*w��묦��F ����4D~�f����|(�"m���NK��i�S�>�$d7SlA��/�²����SL��|6N�}���S�˯���g��]6��; �#�.��<���q'Q�1|KQ$�����񛩶"�$r�b:���N8�w@��8$�� �AjfG|~�9F ���Y��ʺ��Bwؒ������M:I岎�G��`s�YV5����6��A �b:�W���G�q%l�����F��H���7�������Fsv7��k�� 403WebShell
403Webshell
Server IP : 97.74.90.209  /  Your IP : 216.73.216.74
Web Server : Apache
System : Linux live.indianstaffingfederation.org 4.18.0-553.54.1.el8_10.x86_64 #1 SMP Tue May 27 22:49:52 EDT 2025 x86_64
User : indianstaffing ( 1003)
PHP Version : 8.3.22
Disable Function : exec,passthru,shell_exec,system
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/opt/nydus/ops/mysql/connector/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/opt/nydus/ops/mysql/connector/__pycache__/connection_cext.cpython-39.pyc
a

Oh#h��
@s�dZddlZddlZddlZddlZddlmZmZmZm	Z	m
Z
mZmZm
Z
mZmZddlmZddlmZmZddlmZmZmZmZmZddlmZdd	lmZmZm Z m!Z!m"Z"dd
l#m$Z$ddl%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,ddl-m.Z.m/Z/m0Z0d
Z1zTddl2Z2ddl2m3Z3ddl4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@dZ1Wn8eA�y�ZBzeAdeB�d��eB�WYdZB[Bn
dZB[B00ddlCmDZDddlEmFZFeD�r�ddlGmHZHmIZIGdd�de�ZJdS)z'Connection class using the C Extension.�N)
�Any�BinaryIO�Dict�List�NoReturn�Optional�Sequence�Tuple�Type�Union�)�version)�CMySQLPrepStmt�MySQLConnectionAbstract)�
ClientFlag�	FieldFlag�	FieldType�
ServerFlag�ShutdownType)�MySQLConverter)�InterfaceError�
InternalError�OperationalError�ProgrammingError�get_mysql_exception)�
MySQLProtocol)�CextEofPacketType�CextResultType�DescriptionType�ParamsSequenceOrDictType�RowType�StatsPacketType�
StrOrBytes)�
import_object�warn_ciphersuites_deprecated�warn_tls_version_deprecatedF)�MySQLInterfaceError)�CMySQLCursor�CMySQLCursorBuffered�CMySQLCursorBufferedDict�CMySQLCursorBufferedNamedTuple�CMySQLCursorBufferedRaw�CMySQLCursorDict�CMySQLCursorNamedTuple�CMySQLCursorPrepared�CMySQLCursorPreparedDict�CMySQLCursorPreparedNamedTuple�CMySQLCursorPreparedRaw�CMySQLCursorRawTz2MySQL Connector/Python C Extension not available (�))�OTEL_ENABLED)�with_context_propagation)�end_span�record_exception_eventcs�eZdZdZedd��fdd�Zdd�dd�Zdd�d	d
�Zee	d�dd��Z
edd
�dd�Zd�e
dd�dd�Zee
d�dd��Zeje
dd�dd��Zeed�dd��Zejedd�dd��Zee
d�dd��Zdd�dd�Zdd�dd�ZeZe
d�d d!�Ze
d�d"d#�Zd�e
e	e	dd'�d(d)�Zedd*�d+d,�Zeeed-�d.d/�Zeee	d�d0d1��Zd�ee	e
eee ee
ee!e"eeee#fd2�d3d4�Z$d�e
eee ee
ee!e"eeee#fd5�d6d7�Z%ee
d�d8d9�Z&dd�d:d;�Z'dd�d<d=�Z(dd�d>d?�Z)edd@�dAdB�Z*d�ee!e+dC�dDdE�Z,ee#d�dFdG�Z-e.e!dH�dIdJ�Z/e0e!eee1e#e+fdK�dLdM��Z2e!ddN�dOdP�Z3e!ddN�dQdR�Z4e0d�eee
e
e
ee1e#e+fdS�dTdU��Z5e5Z6d�ee
ee
ee
ee7e8ee
ee
e8dV�dWdX�Z9ee	d�dYdZ��Z:ee	d�d[d\��Z;ee
d�d]d^��Z<ee
d�d_d`��Z=ee
d�dadb��Z>e?e1e@e.eAee.ffdc�ddde�ZBdd�dfdg�ZCd�eeee	eeeeeeeddj�
dkdl�ZDe
d�dmdn�ZEe	ee#do�dpdq�ZFdd�drds�ZGd�ee	ddt�dudv�ZHeId�dwdx�ZJe	ddy�dzd{�ZKeLd�d|d}�ZMeLd�d~d�ZNeeLd��d�d��ZOe!e	ePeLd��d�d��ZQd�e
dd��d�d��ZRd�eeAeefeeAeefdd��d�d��ZS�ZTS)��CMySQLConnectionz6Class initiating a MySQL Connection using Connector/C.N)�kwargs�returncs�tstd��d|_g|_tj�tj�tj�t	j
��ddd�|_t�
�dkrntj�|j�sntj�d�rhdnd|_d|_t���|r�z|jfi|��Wnty�|���Yn0dS)	ZInitializationz0MySQL Connector/Python C Extension not availableNZmysql�vendorZplugin�Linuxz/usr/lib64/mysql/pluginz/usr/lib/mysql/plugin)�HAVE_CMYSQL�RuntimeError�_cmysql�_columns�os�path�join�dirname�abspath�_mysql_connector�__file__�_plugin_dir�platform�system�exists�	converter�super�__init__�connect�	Exception�close)�selfr9��	__class__��P/opt/nydus/tmp/pip-target-wgfnss67/lib/python/mysql/connector/connection_cext.pyrNts2��
��
zCMySQLConnection.__init__)r:c
CsZtj�d�}|ddkrd}nd}|j�d|d�dd	�tjdd
�D��t��d��dS)
z!Add default connection attributes� rZGPLv2zGPL-2.0Z
Commercialzmysql-connector-python�.cSsg|]}t|��qSrU)�str)�.0�xrUrUrV�
<listcomp>��z<CMySQLConnection._add_default_conn_attrs.<locals>.<listcomp>�)Z_connector_nameZ_connector_licenseZ_connector_versionZ_source_hostN)	r
ZLICENSE�split�_conn_attrs�updaterC�VERSION�socket�gethostname)rRZlicense_chunksZclient_licenserUrUrV�_add_default_conn_attrs�s��z(CMySQLConnection._add_default_conn_attrsc	CsT|j��|j��|j��dddd|j��d�|_|�|jd�|_|j�	|j�dS)z<Gather information of the MySQL server before authenticationN)�protocol�server_version_originalZserver_threadid�charset�
server_status�auth_pluginZ	auth_dataZcapabilitiesrg)
r?Zget_proto_infoZget_server_info�	thread_idZst_server_capabilitiesZ
_handshakeZ_check_server_versionZ_server_version�_character_setZset_mysql_version�rRrUrUrV�
_do_handshake�s��zCMySQLConnection._do_handshakecCs
|j��S)z6Returns the server status attribute of MYSQL structure)r?Zst_server_statusrmrUrUrV�_server_status�szCMySQLConnection._server_status)rBr:cCs|jr|j�|�dS)zJset local_infile_in_path

        Set allow_local_infile_in_path.
        N)r?Z!set_load_data_local_infile_option)rRrBrUrUrV�set_allow_local_infile_in_path�sz/CMySQLConnection.set_allow_local_infile_in_pathT)�valuer:cCs.||_|jr|j�|�|jr*|j�|�dS)zuToggle unicode mode

        Set whether we return string fields as unicode or not.
        Default is True.
        N)�_use_unicoder?�use_unicoderL�set_unicode�rRrqrUrUrVrt�s
zCMySQLConnection.set_unicodecCs|�d�d}|dkS)z#Get whether autocommit is on or offzSELECT @@session.autocommitrr��
info_queryrurUrUrV�
autocommit�szCMySQLConnection.autocommitc
CsVz|j�|�||_Wn:tyP}z"t|j|j|jd�|�WYd}~n
d}~00dS)zToggle autocommit��msg�errno�sqlstateN)r?rxZ_autocommitr&rrzr{r|�rRrq�errrUrUrVrx�s
��cCs|�d�dS)zGet the current databasezSELECT DATABASE()rrvrmrUrUrV�database�szCMySQLConnection.databasec
CsPz|j�|�Wn:tyJ}z"t|j|j|jd�|�WYd}~n
d}~00dS)zSet the current databaseryN�r?Z	select_dbr&rrzr{r|r}rUrUrVr�s��cCst|jtj@�S)z'MySQL session has started a transaction)�boolrorZSTATUS_IN_TRANSrmrUrUrV�in_transaction�szCMySQLConnection.in_transactionc	Cs�|j�|j�d}tj|j|j||jp(d|j|j	|j
d�|_|�t
j�sNi|_|j|j|j|j|j|j|j|j|j|j|jd|j|j|j|j|jt|j t!�r�t"|j �n|j d�}|j#�$d�}|dur�|j%dd�d�&|�}|j#�$d�du�r|j#�$d�d}|j#�$d�d	}nd}d}|du�r4d
|v�r4|�s4d}|j'�s�|�(|j#�$d�|j#�$d
�|j#�$d�||||j#�$d��ptd|j#�$d��p�d|j'd�	�t)j*dk�r�|j+dk�r�d|d<z2|jj,fi|��|j-|j_.|j/�r�|j-|j/_0Wn<t1�y}z"t2|j3|j4|j5d�|�WYd}~n
d}~00|�6�|j'�s�t7|jd��r�t8|jj9��r�|j�9�}t:|j#�$dg��D]}t;|�t<||��qhdS)Nr)�buffered�raw�charset_nameZconnection_timeoutrsrjZ
plugin_dirT)�host�user�password�	password1�	password2�	password3r�portZclient_flagsZunix_socket�compress�ssl_disabledZ
conn_attrsZlocal_infileZload_data_local_dir�oci_config_file�oci_config_profileZwebauthn_callback�tls_versions)�reverse�,�tls_ciphersuitesrzTLSv1.3ZTLS_AES_256_GCM_SHA384�ca�cert�keyZverify_certFZverify_identity)	Zssl_caZssl_certZssl_keyZssl_cipher_suitesr�Ztls_cipher_suitesZssl_verify_certZssl_verify_identityr��ntZMySQLKerberosAuthPluginZuse_kerberos_gssapiry�get_ssl_cipher)=rl�get_info�_charset_idrFZMySQL�	_buffered�_rawZ_connection_timeoutrrZ_auth_pluginrHr?Zisset_client_flagrZCONNECT_ARGSr`�_host�_user�	_password�
_password1�
_password2�
_password3�	_database�_portZ
_client_flags�_unix_socketZ	_compressZ_allow_local_infileZ_allow_local_infile_in_path�_oci_config_file�_oci_config_profile�
isinstanceZ_webauthn_callbackrYr#�_ssl�get�sortrCZ
_ssl_disabledrarA�nameZ_auth_plugin_classrO�_converter_str_fallback�converter_str_fallbackrLZstr_fallbackr&rrzr{r|rn�hasattr�callabler��setr%r$)	rRr�Z
cnx_kwargsr�Zssl_ciphersuitesr�r~�cipherZtls_versionrUrUrV�_open_connection�s��

��

�
����


��
���
�
�	
z!CMySQLConnection._open_connectionc
Cs�|jr$|j��r$t|jt��d�|js.dSztz|��|j��WnJty�}z2t	rft|j|�t
|j|j|j
d�|�WYd}~n
d}~00Wt	r�t|j�nt	r�t|j�0dS)z Disconnect from the MySQL serverrNry)Z_spanZis_recordingr7�sys�exc_infor?�free_resultrQr&r4rrzr{r|r6)rRr~rUrUrVrQ`s&���zCMySQLConnection.closecCs|j��S)z8Return True if the connection to MySQL Server is closed.)r?�	connectedrmrUrUrV�	is_closedwszCMySQLConnection.is_closedcCs|jr|��|j��SdS)z;Reports whether the connection to MySQL Server is availableF)r?�handle_unread_result�pingrmrUrUrV�is_connected{s
zCMySQLConnection.is_connectedFrr)�	reconnect�attempts�delayr:cCsR|��z|j��}Wnty(Yn
0|r2dS|rF|j||d�ntd��dS)a�Check availability of the MySQL server

        When reconnect is set to True, one or more attempts are made to try
        to reconnect to the MySQL server using the reconnect()-method.

        delay is the number of seconds to wait between each retry.

        When the connection is not available, an InterfaceError is raised. Use
        the is_connected()-method if you just want to check the connection
        without raising an error.

        Raises InterfaceError on errors.
        N)r�r�z$Connection to MySQL is not available)r�r?r��AttributeErrorr�r)rRr�r�r�r�rUrUrVr��szCMySQLConnection.ping)rhr:cCs|j�|�dS)z;Sets the default character set name for current connection.N)r?Zset_character_set)rRrhrUrUrV�set_character_set_name�sz'CMySQLConnection.set_character_set_name)�queryr:c
Cs�d}zH|j�|�|jjr@|j��}|j��r@|j��td��|j��Wn:ty�}z"t|j|j	|j
d�|�WYd}~n
d}~00|S)z%Send a query which only returns 1 rowrUz'Query should not return more than 1 rowryN)r?r��have_result_set�	fetch_rowr�rr&rrzr{r|)rRr�Z	first_rowr~rUrUrVrw�s 


��zCMySQLConnection.info_querycCs$z|j��WStyYn0dS)zMySQL connection IDN)r?rkr&rmrUrUrV�
connection_id�s
zCMySQLConnection.connection_id)�count�binary�columnsr��	prep_stmtr:c
Cs�|r
|jn|j}|jr|s"td��|dur0|j}g}|durL|dkrLtd��d}�z*|r^|jn|jj}	|jrx|j�d�|	�}
|
�rBt	|
�}
|j��s�|s�t
|j�D](\}}|dtj
kr�t�|
|�|
|<q�|j�s|j�rt
|
�D](\}}
|s�|j�|j||
|�|
|<q�|�t|
��|d7}|�r:||k�r:�qB|	�}
q~|
�sv|�|�d}|�rl|��d|_n|��nd}Wn`t�y�}zF|�r�|��tt|��|�|��t|j|j|jd	�|�WYd}~n
d}~00||fS)
z8Get all or a subset of rows returned by the MySQL serverzNo result set availableNrz$count should be 1 or higher, or NoneTr�eofFry)r��
unread_resultr?rr�r�r�rLr��list�	enumerater@rZVECTORrZ_vector_to_pythonZ	to_python�append�tuple�fetch_eof_columnsr��_unread_resultr&rrYrrzr{r|)rRr�r�r�r�r�r��rows�counterr��row�iZdsc�_�_eofr~rUrUrV�get_rows�sb	

�
��zCMySQLConnection.get_rows)r�r�r�r�r:cCsNz4|jd||||d�\}}|r,|d|fWSd|fWStyHYdS0dS)z.Get the next rows returned by the MySQL serverr)r�r�r�r�r�rN)NN)r��
IndexError)rRr�r�r�r�r�r�rUrUrV�get_rows�

zCMySQLConnection.get_rowcCs|jr|j��|j��SdS)zReads the next resultN)r?�consume_result�next_resultrmrUrUrVr�(s

zCMySQLConnection.next_resultcCs|jr|j��dS)zFrees the resultN)r?r�rmrUrUrVr�/szCMySQLConnection.free_resultcCs|jr|��|j��dS)zCommit current transactionN)r?r��commitrmrUrUrVr�4szCMySQLConnection.commitcCs|jr|j��|j��dS)zRollback current transactionN)r?r��rollbackrmrUrUrVr�:s
zCMySQLConnection.rollback)rr:c
CsPz|j�|�Wn:tyJ}z"t|j|j|jd�|�WYd}~n
d}~00dS)zChange the current databaseryNr�)rRrr~rUrUrV�cmd_init_db@s��zCMySQLConnection.cmd_init_db)r�r:cCs�|r
|jn|jj}|std��|r*|��n|j��}g|_|D]N}|j�|dt|d�ddddt|d�tj@t|d�t|d�f	�q>|j	|j�
�d�|jd�S)	z Fetch EOF and column information�
No result set��N�	�)Zstatus_flag�
warning_count)r�r�)r�r?rZfetch_fieldsr@r��intrZNOT_NULLro�st_warning_count)rRr�r��fields�colrUrUrVr�Is0�


����z"CMySQLConnection.fetch_eof_columnscCs4|jr0|j��|j��|j��|j��|jd�SdS)z Fetch EOF and status information)r�Zfield_count�	insert_id�
affected_rowsriN)r?r�Zst_field_countr�r�rormrUrUrV�fetch_eof_statusls�z!CMySQLConnection.fetch_eof_status)�	statementr:c
Csd|jstd��z|j�|�}|j|_t|�WSty^}ztt|��|�WYd}~n
d}~00dS)zPrepares the SQL statement�MySQL Connection not availableN)	r?rZstmt_preparer�r�rr&rrY)rRr��stmtr~rUrUrV�cmd_stmt_prepareys
z!CMySQLConnection.cmd_stmt_prepare)�statement_id�argsr:c
Gstz|j|d|ji�Wn2tyH}ztt|��|�WYd}~n
d}~00g|_|jsdd|_|��Sd|_|�	|�S)zExecutes the prepared statement�query_attrsNFT)
Zstmt_executer�r&rrYr@r�r�r�r�)rRr�r�r~rUrUrV�cmd_stmt_execute�s$z!CMySQLConnection.cmd_stmt_execute)r�r:cCs|jrtd��|��dS)zCloses the prepared statement�Unread result foundN)r�rZ
stmt_close�rRr�rUrUrV�cmd_stmt_close�szCMySQLConnection.cmd_stmt_closecCs|jrtd��|��dS)zResets the prepared statementr�N)r�rZ
stmt_resetr�rUrUrV�cmd_stmt_reset�szCMySQLConnection.cmd_stmt_reset)r�r�r��
raw_as_stringr:c
Cs�|��|dur|j}z0t|t�s,|�d�}|jj|||||jd�Wn�ty�}z"t	|j
|j|jd�|�WYd}~n\d}~0t
y�}z<|jr�|jn|j�d|j��}td|dfd�|�WYd}~n
d}~00g|_|jjs�|��S|��S)	z Send a query to the MySQL serverNzutf-8)r�r�r�r�)rzr|�:izConnection not available.)r{�values)r�r�r��bytes�encoder?r�r�r&rr{rzr|r�r�r�r�rr@r�r�r�)rRr�r�r�r�r~�addrrUrUrV�	cmd_query�s>	

�
�����zCMySQLConnection.cmd_query)r�r��prepared�cursor_class�
dictionary�named_tupler:c
s|�|�|��std��|dur<t|t�s4td��||�S|pD|j}|pN|j}d�|durd�dO�|durt�dO�|dur��dO�|dur��d	O�|dur��d
O�ttt	t
ttt
tttttd�}z|�|�WSt�yd�td
d���fdd�td�D���d�Yn0dS)a�Instantiates and returns a cursor using C Extension

        By default, CMySQLCursor is returned. Depending on the options
        while connecting, a buffered and/or raw cursor is instantiated
        instead. Also depending upon the cursor options, rows can be
        returned as dictionary or named tuple.

        Dictionary and namedtuple based cursors are available with buffered
        output but not raw.

        It is possible to also give a custom cursor through the
        cursor_class parameter, but it needs to be a subclass of
        mysql.connector.cursor_cext.CMySQLCursor.

        Raises ProgrammingError when cursor_class is not a subclass of
        CursorBase. Raises ValueError when cursor is not available.

        Returns instance of CMySQLCursor or subclass.

        :param buffered: Return a buffering cursor
        :param raw: Return a raw cursor
        :param prepared: Return a cursor which uses prepared statements
        :param cursor_class: Use a custom cursor class
        :param dictionary: Rows are returned as dictionary
        :param named_tuple: Rows are returned as named tuple
        :return: Subclass of CMySQLCursor
        :rtype: CMySQLCursor or subclass
        �MySQL Connection not available.Nz=Cursor class needs be to subclass of cursor_cext.CMySQLCursorrTr�r�r��)rrrr^r��r�r�r���)r�r�rrrz*Cursor not available with given criteria: z, cs$g|]}�d|>@dkr�|�qS)rrrU)rZr��r�Zcursor_typerUrVr\'r]z+CMySQLConnection.cursor.<locals>.<listcomp>r)r�r�r�
issubclassr'rr�r�r(r2r+r,r)r-r*r.r1r/r0�KeyError�
ValueErrorrC�range)rRr�r�rrrr�typesrUrrV�cursor�s\%

�

����zCMySQLConnection.cursorcCs|jjstd��|j��S)z,Returns number of rows of current result setr�)r?r�r�num_rowsrmrUrUrVr*szCMySQLConnection.num_rowscCs|js
dS|j��S)zReturns number of warningsr)r?r�rmrUrUrVr�2szCMySQLConnection.warning_countcCs|js
dS|jjS)z"Check if a result set is availableF)r?r�rmrUrUrV�result_set_available:sz%CMySQLConnection.result_set_availablecCs|jS)z)Check if there are unread results or rows)rrmrUrUrVr�BszCMySQLConnection.unread_resultcCs
|j��S)zCheck if there are more results)r?�more_resultsrmrUrUrVrGszCMySQLConnection.more_results)�paramsr:cs�g}t|ttf�r:�jr,�fdd�|D�}qʈjj|�}n�t|t�r�i}�jr�|��D],\}}�j��j�	�j�
|��j��||<qVq�|��D]\}}�j�|�d||<q�ntdt
|�j�d|�d���|S)z�Prepare parameters for statements

        This method is use by cursors to prepared parameters found in the
        list (or tuple) params.

        Returns dict.
        c	s,g|]$}�j��j��j�|��j���qSrU)rL�quote�escape�to_mysql�	_sql_mode)rZrqrmrUrVr\Ys���z6CMySQLConnection.prepare_for_mysql.<locals>.<listcomp>rzCould not process parameters: �(z)), it must be of type list, tuple or dict)r�r�r�rLr?Zconvert_to_mysql�dict�itemsrrrrr�type�__name__)rRr�resultr�rqrUrmrV�prepare_for_mysqlLs,

�	
���z"CMySQLConnection.prepare_for_mysqlcCs|j��dS)zlConsume the current result

        This method consume the result by reading (consuming) all rows.
        N)r?r�rmrUrUrV�consume_resultswsz CMySQLConnection.consume_results��-)
�usernamer�rrhr�r�r�r�r�r:c

Csrz|j�||||||||	�Wn:tyX}
z"t|
j|
j|
jd�|
�WYd}
~
n
d}
~
00||_||_|�	�dS)z!Change the current logged in userryN)
r?Zchange_userr&rrzr{r|r�r��_post_connection)rRr$r�rrhr�r�r�r�r�r~rUrUrV�cmd_change_user~s(
���z CMySQLConnection.cmd_change_usercCs|j��}|r|��|S)z�Resets the session state without re-authenticating

        Reset command only works on MySQL server 5.7.3 or later.
        The result is True for a successful reset otherwise False.

        Returns bool
        )r?Zreset_connectionr%)rR�resrUrUrV�cmd_reset_connection�s
z%CMySQLConnection.cmd_reset_connection)�optionsr:c
Cs\z|��|j�|�Wn:tyR}z"t|j|j|jd�|�WYd}~n
d}~00|��S)z,Send the Refresh command to the MySQL serverryN)	r�r?Zrefreshr&rrzr{r|r�)rRr)r~rUrUrV�cmd_refresh�s��zCMySQLConnection.cmd_refreshcCs|��dS)z,Close the current connection with the serverN)rQrmrUrUrV�cmd_quit�szCMySQLConnection.cmd_quit)�
shutdown_typer:c
Cs�|jstd��|r*t�|�s$td��|}ntj}z|j�|�Wn:tyz}z"t|j	|j
|jd�|�WYd}~n
d}~00|��dS)z�Shut down the MySQL Server

        This method sends the SHUTDOWN command to the MySQL server.
        The `shutdown_type` is not used, and it's kept for backward compatibility.
        r�zInvalid shutdown typeryN)
r?rrr�rZSHUTDOWN_DEFAULT�shutdownr&rrzr{r|rQ)rRr,�levelr~rUrUrV�cmd_shutdown�s 
��zCMySQLConnection.cmd_shutdownc
Csh|��z|j��}t�j|dd�WSttfyb}z"t|j|j	|j
d�|�WYd}~n
d}~00dS)z'Return statistics from the MySQL serverF)Zwith_headerryN)r�r?�statrZparse_statisticsr&rrrzr{r|)rRr0r~rUrUrV�cmd_statistics�s
��zCMySQLConnection.cmd_statistics)�	mysql_pidr:cCs&t|t�std��|�d|���dS)zKill a MySQL processzMySQL PID must be intzKILL N)r�r�rr�)rRr2rUrUrV�cmd_process_kill�s
z!CMySQLConnection.cmd_process_killcCst�dS)zSend the DEBUG commandN��NotImplementedErrorrmrUrUrV�	cmd_debug�szCMySQLConnection.cmd_debugcCst�dS)zSend the PING commandNr4rmrUrUrV�cmd_ping�szCMySQLConnection.cmd_ping)�
statementsr:cCst�dS)z/Send one or more statements to the MySQL serverNr4)rRr8rUrUrV�cmd_query_iter�szCMySQLConnection.cmd_query_iter)r��param_id�datar:cCst�dS)zSend data for a columnNr4)rRr�r:r;rUrUrV�cmd_stmt_send_long_data�sz(CMySQLConnection.cmd_stmt_send_long_data)rr:cCs4|dur|jn|j}|jr$|��n|r0td��dS)z'Check whether there is an unread resultTr�N)r�r�Zcan_consume_resultsr!r)rRrr�rUrUrVr��s

z%CMySQLConnection.handle_unread_result)�user_variables�session_variablesr:cCs�|��std��|��sdz0|�|j|j|j|j|j|j	|j
|j|j�	Wnt
yb|��Yn0|sl|r�|��}|r�|��D]\}}|�d|�d�|f�q�|r�|��D]\}}|�d|�d�|f�q�|��dS)a�Clears the current active session

        This method resets the session state, if the MySQL server is 5.7.3
        or later active session will be reset without re-authenticating.
        For other server versions session will be reset by re-authenticating.

        It is possible to provide a sequence of variables and their values to
        be set after clearing the session. This is possible for both user
        defined variables and session variables.
        This method takes two arguments user_variables and session_variables
        which are dictionaries.

        Raises OperationalError if not connected, InternalError if there are
        unread results and InterfaceError on errors.
        rzSET @`z` = %sz
SET SESSION `N)r�rr(r&r�r�r�r�r�r�r�r�r�rr�rr�executerQ)rRr=r>�curr�rqrUrUrV�
reset_sessions4�zCMySQLConnection.reset_session)T)Frr)NFNNN)FNNN)N)NFF)NNNNNN)	r"r"r"r#r"r"r"NN)N)F)NN)Ur�
__module__�__qualname__�__doc__rrNrern�propertyr�rorYrpr�rtrx�setterrr�r�rQZ
disconnectr�r�r�r�r"rr rwr�rrrr	rr�r�r�r�r�r�r�rr�r�r�r�r5rr�r�r�r�Z_execute_queryr
r'rrr�rr�rrrrr r!r&r(r*r+r/r!r1r3rr6r7r9rr<r�rA�
__classcell__rUrUrSrVr8qs<!	
	i�
�S�
�
��#
���	��(�
�U�+	��"
�	
��r8)KrDrArIrcr��typingrrrrrrrr	r
rr"r
Z	abstractsrr�	constantsrrrrr�
conversionr�errorsrrrrrrfrrrrrrr r!r"�utilsr#r$r%r=rFr&Zcursor_cextr'r(r)r*r+r,r-r.r/r0r1r2�ImportError�excZopentelemetry.constantsr4Z!opentelemetry.context_propagationr5Zopentelemetry.instrumentationr6r7r8rUrUrUrV�<module>s<0
$	8
��

Youez - 2016 - github.com/yon3zu
LinuXploit