����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 : 213.165.242.4  /  Your IP : 216.73.217.80
Web Server : Apache
System : Linux amsngx344.inmotionhosting.com 4.18.0-553.40.1.lve.el8.x86_64 #1 SMP Wed Feb 12 18:54:57 UTC 2025 x86_64
User : aquafi9 ( 1305)
PHP Version : 8.1.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /opt/carbon-client/venv/lib64/python3.13/site-packages/dns/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/carbon-client/venv/lib64/python3.13/site-packages/dns/__pycache__/query.cpython-313.pyc
�

���i���#�f�%SrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK	r	SSK
r
SSKrSSK
JrJrJrJrJrJr SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK rSSK!rSSK"r"Sr&Sr'\RPRSS5r*\*(aUSSK+r,SSK-r-\,R\r/\,R`RbRdr3"SS\/5r4"S	S
\-Rj5r6O
"SS
5r6\*r7S\Rp\9-S
\RtS\9S\R4Sjr;\;r<\\Rp\9-\Rt\9/\R4\=S'"SS\R|R~5r@"SS\R|R�5rB"SS\R|R~5rC"SS\R|R~5rD\R�R�rFSrGSrHSrISrJSrKSrLS{S!jrMS|S\Rp\9-S"\RtS#\S-S\R4S$jjrNS}S\Rp\9-S"\RtS%\"R�S&\R�R�\R-S-S#\S-S\"R�4S'jjrTS(rUS)\S*SS*4S+jrV"S,S-\R�5rXSS.SSS/S/SS0S SS S\R�\XR�4S1\R�R�S2\RS3\]S-S4\9S#\RS-S5\9S6\^S7\^S8\S-S9\RS:\^S;\RS-S<\^\R-\"R�-S)\S*S=\9S>\XS\R�R�4"S?jjr_S@\R�R�SA\bS\b4SBjrcS@\R�R�SC\RSD\bSS4SEjrdS~S1\R�R�S2\RSF\RS3\]S-S4\9S#\RS-S5\9S6\^S7\^S<\^\R-\"R�-S:\^SG\R�R�S-S\R�R�4SHjjrfSIrgSJrhS|SK\SL\R�R�\b-SM\SN\]S-S\\9\]44
SOjjriSSK\SM\S-SN\]S-SP\^S6\^SQ\\R�R�\R�R�4S-SR\bS-S7\^SS\^ST\^SU\R�R�S-S\4SVjjrlS�S1\R�R�S2\RS3\]S-S4\9S#\RS-S5\9SP\^S6\^S7\^SS\^SK\S-ST\^S\R�R�4SXjjrmS�S1\R�R�S2\RS3\]S-S4\9S#\RS-S5\9SP\^S6\^S7\^SY\S-SZ\S-ST\^S\\R�R�\^44S[jjrnS\roS]rpS|SK\SL\R�R�\b-SN\]S-S\\9\]44S^jjrqS�SK\SN\]S-S6\^SQ\\R�R�\R�R�4S-SR\bS-S7\^S\\R�R�\]44S_jjrrS`rsS�S1\R�R�S2\RS3\]S-S4\9S#\RS-S5\9S6\^S7\^SK\S-S\R�R�4SajjrtSbruS�S<\^\R-Sc\^Sd\v\RS-S\"R�4SejjrwS&\RS-S<\^\R-S\"R�4SfjrxS�S1\R�R�S2\RS3\]S-S4\9S#\RS-S5\9S6\^S7\^SK\"R�S-S%\"R�S-S&\RS-S<\^\R-S\R�R�4SgjjryS�S1\R�R�S2\RS3\]S-S4\9S#\RS-S5\9S6\^S7\^SG\R�R�S-S<\^\R-Sh\RS-S&\RS-S\R�R�4Sijjr`"SjSk\R�5rzSl\R�R�Sm\R\"R�-SU\R�R�Sn\9S-S3\]S-SN\]S-S\4Sojr}\R�R�\GRGRSSWSSS SSSSS/\R�GR4
S2\RSp\R�R�\R-Sq\R�GR\R-Sr\GRGR\R-S3\]S-S4\9SQ\\R�R�\R�R�4S-Ss\R�R�\R-S-St\^Su\]S-S#\RS-S5\9Sn\9Sv\^Sw\R�R�\R-S\4 SxjjrESSWSSSS\zGR
4S2\RSl\R�R�SU\R�R�S-S4\9S3\]S-Su\]S-S#\RS-S5\9Sy\zSS4Szjjr�g!\#a
 SSK$J%r" G	N6f=f)�zTalk to a DNS server.�N)�Any�Callable�Dict�Optional�Tuple�castc�~�UcgU[R"5-
nUS::a[RReU$)N�)�time�dns�	exception�Timeout)�
expiration�timeouts  �A/opt/carbon-client/venv/lib/python3.13/site-packages/dns/query.py�
_remainingr5s7������4�9�9�;�&�G��#�~��m�m�#�#�#��N�c�N�Ucg[[R"5U-U5$�N)�minr)rrs  r�_expiration_for_this_attemptr>s#������t�y�y�{�W�$�j�1�1r�dohc�@^�\rSrSrU4SjrSSjrSSjrSrU=r$)�_NetworkBackend�Lc�R>�[TU]5 X lXlX0lX@lgr)�super�__init__�_local_port�	_resolver�_bootstrap_address�_family)�self�resolver�
local_port�bootstrap_address�family�	__class__s     �rr�_NetworkBackend.__init__Ms$����G���)��%�N�&7�#�!�Lrc��/n[U5upx[RRU5(aUR	U5 O�UR
bUR	UR
5 Og[
U5nURn	U(a[RRU5n	URRXUS9n
U
R5nUH�n[RRU5nUcURS:wa1UcSn[RRX@R4U5n
OSn
[U[R U
5n[#SU5n[%U[RRX�4U5U5 ['U5s $ [*R,e![(a M�f=f)N)r'�lifetimerz0.0.0.0g@)�_compute_timesr�inet�
is_address�appendr!rr"�af_for_addressr �resolve_name�	addressesr�low_level_address_tuple�make_socket�socket�SOCK_STREAMr�_connect�_CoreSyncStream�	Exception�httpcore�ConnectError)r#�host�portr�
local_address�socket_optionsr2�_rr'�answers�address�af�source�sock�attempt_expirations                r�connect_tcp�_NetworkBackend.connect_tcpTs����I�*�7�3�M�A��x�x�"�"�4�(�(�� � ��&��(�(�4�� � ��!8�!8�9�$�Z�0������ � �X�X�4�4�]�C�F��.�.�5�5��'�6���$�-�-�/�	�$���X�X�,�,�W�5�� �,��0@�0@�A�0E�$�,�(1�
� �X�X�=�=�&�(8�(8�9�2��F�"�F�
�&�r�6�+=�+=�v�F�D�)E�c�:�)V�&������8�8�'��"�M�*��
+�4�0�0�%%�*�'�'�'��!����s�AF3�3
G�Gc��[er��NotImplementedError)r#�pathrr?s    r�connect_unix_socket�#_NetworkBackend.connect_unix_socket}s
��&�%r)r!r"rr )NNN�NN)	�__name__�
__module__�__qualname__�__firstlineno__rrGrM�__static_attributes__�
__classcell__�r(s@rrrLs$���	"�PT�'	(�T6:�	&�	&rrc�J^�\rSrSrSSS\R
S.U4SjjrSrU=r$)�_HTTPTransport�rN�r%r&r$r'c�>�Uc!UcSSKnURR5n[TU]"U0UD6 [X1X$5URlg�Nr)�dns.resolverr$�Resolverrrr�_pool�_network_backend)	r#r%r&r$r'�args�kwargsrr(s	        �rr�_HTTPTransport.__init__�sO�����$5�$=�#��<�<�0�0�2���G��d�-�f�-�*9��&7�+�D�J�J�'r�)	rPrQrRrSr5�	AF_UNSPECrrTrUrVs@rrXrX�s!����"���#�#�
	�	rrXc�B�\rSrSrSSS\R
S.SjrSrSrg)rX�rNrZc��grrd)r#r%r&r$r'rarbs       rrrc�s��
rc��[errJ)r#r<r=rr>s     rrG�_HTTPTransport.connect_tcp����%�%rrd)	rPrQrRrSr5rerrGrTrdrrrXrX�s ���"���#�#�
		�	&rrC�kind�proto�returnc�0�[R"XU5$r)r5)rCrlrms   r�default_socket_factoryrp�s��
�=�=��5�)�)r�socket_factoryc��\rSrSrSrSrg)�UnexpectedSource�z=A DNS query response came from an unexpected address or port.rdN�rPrQrRrS�__doc__rTrdrrrsrs�s��Grrsc��\rSrSrSrSrg)�BadResponse�z<A DNS query response does not respond to the question asked.rdNrurdrrrxrx�s��Frrxc��\rSrSrSrSrg)�NoDOH��zIDNS over HTTPS (DOH) was requested but the httpx module is not
available.rdNrurdrrr{r{����rr{c��\rSrSrSrSrg)�NoDOQ��zJDNS over QUIC (DOQ) was requested but the aioquic module is not
available.rdNrurdrrrr�r}rrc�F�[R"5nUcUS4$XU-4$r)r)r�nows  rr,r,�s)��
�)�)�+�C����T�{���7�]�#�#rc�R�U(a4[U[R5(aUR5S:�ag[R
"5nSnU(aU[R-nU(aU[R-nU(aURX5 UcSnO8U[R"5-
nUS::a[RReURU5(d[RReSSS5 g!,(df   g=f)NrTr
)�
isinstance�ssl�	SSLSocket�pending�	selectors�DefaultSelector�
EVENT_READ�EVENT_WRITE�registerrrr
r�select)�fd�readable�writabler@r�sel�eventsrs        r�	_wait_forr��s����J�r�3�=�=�1�1�b�j�j�l�Q�6F��	�	"�	"�	$������i�*�*�*�F���i�+�+�+�F���L�L��$����G� �4�9�9�;�.�G��#�~��m�m�+�+�+��z�z�'�"�"��-�-�'�'�'�#�
%�	$�	$�s
�B=D�
D&c�"�[USSSU5 g)NTF�r���srs  r�_wait_for_readabler��s��
�a��u�d�J�/rc�"�[USSSU5 g)NFTr�r�s  r�_wait_for_writabler��s��
�a���d�J�/rc��[RRXS5n[RRXS5nX4:H=(a USSUSS:H$![RRa gf=f)NrF�)rr-�	inet_ptonr
�SyntaxError)rC�a1�a2�n1�n2s     r�_addresses_equalr��su���
�X�X�
�
��q�E�
*��
�X�X�
�
��q�E�
*���8�(��1�2��"�Q�R�&�(�(���=�=�$�$����s�AA�A=�<A=c���U(dg[XU5(d3[RRUS5(a
USSUSS:XagU(ag[	SUSU35e)NTrr�Fzgot a response from z instead of )r�rr-�is_multicastrs)rC�from_address�destination�ignore_unexpecteds    r�_matches_destinationr�sl������+�6�6������k�!�n�-�-�,�q�r�2B�k�RS�RT�o�2U��	��
�
�|�n�L�[�M�J��rTc�4�SnSn[RRU5nUnU(a9[RRU5nU(aXu:wa[	S5eOUnU(a'U(d [RRU5nU(a![RR
Xa4U5nU(a![RR
X#4U5nXVU4$![a U(aeN�f=f![a [	S5ef=f)Nz5different address families for source and destinationz3source_port specified but address family is unknown)rr-r0r9�
ValueError�
any_for_afr3)�wherer=rD�source_port�where_must_be_addressrCr��safs        r�_destination_and_sourcer�s��

�B��K��
�X�X�
$�
$�U�
+����
��h�h�%�%�f�-��
��y� �K�����B��6�	T��X�X�(�(��,�F���h�h�6�6��7J�B�O��
����1�1�6�2G��L���V�$�$��?�� ��!���,�	T��R�S�S�	T�s�!C)�6D�)C>�=C>�D�typerDc��[XS5nURS5 UbURU5 U$![a UR	5 ef=f)a!Make a socket.

This function uses the module's ``socket_factory`` to make a socket of the
specified address family and type.

*af*, a ``socket.AddressFamily`` or ``int`` is the address family, either
``socket.AF_INET`` or ``socket.AF_INET6``.

*type*, a ``socket.SocketKind`` is the type of socket, e.g. ``socket.SOCK_DGRAM``,
a datagram socket, or ``socket.SOCK_STREAM``, a stream socket.  Note that the
``proto`` attribute of a socket is always zero with this API, so a datagram socket
will always be a UDP socket, and a stream socket will always be a TCP socket.

*source* is the source address and port to bind to, if any.  The default is
``None`` which will bind to the wildcard address and a randomly chosen port.
If not ``None``, it should be a (low-level) address tuple appropriate for *af*.
rF)rq�setblocking�bindr9�close)rCr�rDr�s    rr4r4DsR��,	�r��#�A��	�
�
�e����
�F�F�6�N������	���	�
��s	�&5�A�ssl_context�server_hostnamec��[XU5n[U[RR5(aUR5nUR
USUS9$)aVMake a socket.

This function uses the module's ``socket_factory`` to make a socket of the
specified address family and type.

*af*, a ``socket.AddressFamily`` or ``int`` is the address family, either
``socket.AF_INET`` or ``socket.AF_INET6``.

*type*, a ``socket.SocketKind`` is the type of socket, e.g. ``socket.SOCK_DGRAM``,
a datagram socket, or ``socket.SOCK_STREAM``, a stream socket.  Note that the
``proto`` attribute of a socket is always zero with this API, so a datagram socket
will always be a UDP socket, and a stream socket will always be a TCP socket.

If *ssl_context* is not ``None``, then it specifies the SSL context to use,
typically created with ``make_ssl_context()``.

If *server_hostname* is not ``None``, then it is the hostname to use for server
certificate validation.  A valid hostname must be supplied if *ssl_context*
requires hostname checking.

*source* is the source address and port to bind to, if any.  The default is
``None`` which will bind to the wildcard address and a randomly chosen port.
If not ``None``, it should be a (low-level) address tuple appropriate for *af*.
F)�do_handshake_on_connectr�)r4r�r�name�Name�to_text�wrap_socket)rCr�r�r�rDrEs      r�make_ssl_socketr�esT��>�r��(�D��/�3�8�8�=�=�1�1�)�1�1�3���"�"�� %�'�#��rc�:�Ub
[XX4U5$[XU5$r)r�r4)rCr�rDr�r�s     r�_make_socketr��s&�����r��v�N�N��2�V�,�,rr$zdns.resolver.Resolverc�H�UcSSKnURR5nU$r\)r]r$r^)r$rs  r�_maybe_get_resolverr��s$������<�<�(�(�*���Orc�4�\rSrSrSrSrSrSrSrSr	Sr
SrSrg)	�HTTPVersioni�zzWhich version of HTTP should be used?

DEFAULT will select the first version from the list [2, 1.1, 3] that
is available.
rr���rdN)
rPrQrRrSrv�DEFAULT�HTTP_1�H1�HTTP_2�H2�HTTP_3�H3rTrdrrr�r��s,����G�
�F�	
�B�
�F�	
�B�
�F�	
�Brr��Fz
/dns-query�qr�rr=r��one_rr_per_rrset�ignore_trailing�sessionrL�postr&�verifyr'�http_versionc��[XXES5unnnUnUba[RRU5(a=U[R
:XaSUSUU	3nOU[R:Xa
SUSUU	3n0nUc�[RRU5nURc[S5e[RRUR5(aURnURUS'URbURnU[R:XdU[R:Xa�[ (d�Ucc[#U
5n
WRceU
R%URU5n[&R("[+UR-555nU(a4[/U[R0R25(d[S	5e[5UUUUUUUUUUU
US
9$[ (d[6eU(a*[/U[8R:5(d[S5eUR=5nSS
0nU[R>[R4;nU[R@[R4;nUcSnSnO
USnUSnU(a[BRD"U5nO'[GUUUUUUU
US9n[8R:"UUUUS9nUnUceU
(a:URIS
[K[MU55S.5 UROUUUUUS9nOJ[PRR"U5RUS5nURW5n URYUUUSU 0US9nSSS5 WRZS:dURZS:�a'[USURZSUR\35e[R^RaUR\URbURdUUS9n!URfRi5U!l5URmU!5(d[neU!$!,(df   N�=f)a�Return the response obtained after sending a query via DNS-over-HTTPS.

*q*, a ``dns.message.Message``, the query to send.

*where*, a ``str``, the nameserver IP address or the full URL. If an IP address is
given, the URL will be constructed using the following schema:
https://<IP-address>:<port>/<path>.

*timeout*, a ``float`` or ``None``, the number of seconds to wait before the query
times out. If ``None``, the default, wait forever.

*port*, a ``int``, the port to send the query to. The default is 443.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying the source
address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message. The default is
0.

*one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its own RRset.

*ignore_trailing*, a ``bool``. If ``True``, ignore trailing junk at end of the
received message.

*session*, an ``httpx.Client``.  If provided, the client session to use to send the
queries.

*path*, a ``str``. If *where* is an IP address, then *path* will be used to
construct the URL to send the DNS query to.

*post*, a ``bool``. If ``True``, the default, POST method will be used.

*bootstrap_address*, a ``str``, the IP address to use to bypass resolution.

*verify*, a ``bool`` or ``str``.  If a ``True``, then TLS certificate verification
of the server is done using the default CA bundle; if ``False``, then no
verification is done; if a `str` then it specifies the path to a certificate file or
directory which will be used for verification.

*resolver*, a ``dns.resolver.Resolver`` or ``None``, the resolver to use for
resolution of hostnames in URLs.  If not specified, a new resolver with a default
configuration will be used; note this is *not* the default resolver as that resolver
might have been configured to use DoH causing a chicken-and-egg problem.  This
parameter only has an effect if the HTTP library is httpx.

*family*, an ``int``, the address family.  If socket.AF_UNSPEC (the default), both A
and AAAA records will be retrieved.

*http_version*, a ``dns.query.HTTPVersion``, indicating which HTTP version to use.

Returns a ``dns.message.Message``.
FNzhttps://�:z	https://[z]:zno hostname in URL�sni_hostnamez8session parameter must be a dns.quic.SyncQuicConnection.)r�r��
connectionz)session parameter must be an httpx.Client�acceptzapplication/dns-messagerr�)r>�http1�http2r�r%r&r$r')r�r�r��	transport)zcontent-typezcontent-length)�headers�contentr�
extensions�=r)r�r�paramsr����+� responded with status code z
Response body: ��keyring�request_macr�r�)8r�rr-r.r5�AF_INET�AF_INET6�urllib�parse�urlparse�hostnamer�r=r�r�r��have_dohr�r1�random�choice�listr2r��quic�SyncQuicConnection�_http3r{�httpx�Client�to_wirer�r��
contextlib�nullcontextrX�update�str�lenr��base64�urlsafe_b64encode�rstrip�decode�get�status_coder��message�	from_wirer�r��elapsed�
total_secondsr�is_responserx)"r�r�rr=rDr�r�r�r�rLr�r&r�r$r'r�rCr@�
the_source�urlr��parsedrA�wirer��h1�h2r>r%�cmr��response�twire�rs"                                  r�httpsr�s��N2�
�V�%���R��J��C�	�~�#�(�(�-�-�e�4�4�
������U�G�1�T�F�4�&�1�C�
�6�?�?�
"��e�W�B�t�f�T�F�3�C��J�� ����&�&�s�+���?�?�"��1�2�2��8�8���v���/�/� &����)/���J�~�&��;�;�"��;�;�D��{�~�~�%���+�+�+�H�H��$�*�8�4�H��?�?�.�.�.��+�+�F�O�O�V�D�G� &�
�
�d�7�3D�3D�3F�.G� H���:��S�X�X�0�0�
�
��W�X�X��
������������

�
	
��8����z�'�5�<�<�8�8��D�E�E��9�9�;�D��2�3�G�	�+�.�.�+�*=�*=�>�	>�B�	�+�.�.�+�*=�*=�>�	>�B����
��
�"�1�
�
���]�
��0:�0F�0F�w�0O��"�'����!�/���	
�	��\�\��B�v��
��
�w��"�"�"���N�N�$=�&)�#�d�)�n��
��|�|�����%�$��H��+�+�D�1�8�8��>�D��K�K�M�E��{�{�����u�~�%�#��H�+
�>���c�!�X�%9�%9�C�%?���g�1�(�2F�2F�1G��� 0� 0�1�
3�
�	
�	���������	�	��M�M�)�'�	�	�A��
�
�
+�
+�
-�A�F��=�=�������H�]
��s
�3BQ�
Qr�r�c�H�Uc[eUHup#X!:XdMUs $ [er)�KeyError)r�r��header�values    r�_find_headerr�s)������ �
���>��L�!��Nr�peerr
c��[US5nUc[S5e[U5nUS:a[S5eUS:dUS:�a7Sn[U5S:�aSUR	5-n[
US	UU35eg![
a Nf=f)
Ns:statuszno :status header in responserzstatus is negativer�r��z: r�)rr��intr�rr9r�)r�rr
r�status�errors      r�
_check_statusr �s�����*�-�E��}��9�:�:�
��Z�F�
��z��.�/�/�
��|�v��|����t�9�q�=�
��t�{�{�}�,���D�6�!=�f�X�e�W�M�N�N�$��
�
��
�s�A;�;
B�Brr�c��[RR(d[S5e[R
R
U5nURn
U
ceURbURnSUl	UR5nU(a[R"S5nO [RRX�SS9nUnU U(aUnOWRXXV5n[U5unnUR!U5nUR#X.U
5 UR%['U55n[)UR+5X5 SSS5 [,R,"5nSSS5 [R.R1UUR2UR4UUS9n[7WW-
S5UlUR9U5(d[:eU$!,(df   N�=f!,(df   N�=f)Nz DNS-over-HTTP3 is not available.rT)�verify_mode�server_name�h3r�r
)rr��	have_quicr{r�r�r�r�r=�idr�r�r��SyncQuicManager�connectr,�make_stream�send_h3�receiverr r�rrrr�r��maxr	rx)r�r�rrr=rDr�r�r�r�r�r��	url_partsr�r
�manager�the_manager�the_connection�startr�stream�finishrs                       rr�r��s����8�8����6�7�7����%�%�c�*�I��!�!�H������~�~�!��~�~���A�D��9�9�;�D��5?�5K�5K�D�5Q���(�(�*�*���+�
����	��'�N�(�0�0��V��N�-�W�5���
�
�
'�
'��
0�F��N�N�3�d�+��>�>�*�Z�"8�9�D��&�.�.�*�E�8�1������
�	�������	�	��M�M�)�'�	�	�A���%���
%�A�F��=�=�������H�1�
0��
��s%�<G+�AG�G+�
G(	�$G+�+
G9c�b�URU5$![a [X5 Of=fM/)zReads a datagram from the socket.
A Timeout exception will be raised if the operation is not completed
by the expiration time.
)�recvfrom�BlockingIOErrorr�)rE�max_sizers   r�	_udp_recvr8�s7��
�	1��=�=��*�*���	1��t�0�	1��s��,�,c��U(aURX5$URU5$![a [X5 Of=fMG)z�Sends the specified datagram to destination over the socket.
A Timeout exception will be raised if the operation is not completed
by the expiration time.
)�sendto�sendr6r�)rE�datar�rs    r�	_udp_sendr=�sH��
�	1���{�{�4�5�5��y�y���&���	1��t�0�	1��
s�,�,�A�ArE�whatr�rc��[U[RR5(aUR	5n[
R
"5n[
XX#5nXT4$)a�Send a DNS message to the specified UDP socket.

*sock*, a ``socket``.

*what*, a ``bytes`` or ``dns.message.Message``, the message to send.

*destination*, a destination tuple appropriate for the address family
of the socket, specifying where to send the query.

*expiration*, a ``float`` or ``None``, the absolute time at which
a timeout exception should be raised.  If ``None``, no timeout will
occur.

Returns an ``(int, float)`` tuple of bytes sent and the sent time.
)r�rr�Messager�rr=)rEr>r�r�	sent_time�ns      r�send_udprC�sE��,�$����+�+�,�,��|�|�~���	�	��I��$�k�6�A�
�>�rr�r�r��raise_on_truncation�
ignore_errors�queryc	��Sn[USU5up�[URX�U5(dM.[R"5n
[R
R
UUUUUUS9nU	(aU
bU
RU5(dM�U(aX�4$X�U4$![R
Ra:nU	(a-U
b*U
RUR55(dSnAM�eSnAf[a
 U	(aGMef=f)a�Read a DNS message from a UDP socket.

*sock*, a ``socket``.

*destination*, a destination tuple appropriate for the address family
of the socket, specifying where the message is expected to arrive from.
When receiving a response, this would be where the associated query was
sent.

*expiration*, a ``float`` or ``None``, the absolute time at which
a timeout exception should be raised.  If ``None``, no timeout will
occur.

*ignore_unexpected*, a ``bool``.  If ``True``, ignore responses from
unexpected sources.

*one_rr_per_rrset*, a ``bool``.  If ``True``, put each RR into its own
RRset.

*keyring*, a ``dict``, the keyring to use for TSIG.

*request_mac*, a ``bytes`` or ``None``, the MAC of the request (for TSIG).

*ignore_trailing*, a ``bool``.  If ``True``, ignore trailing
junk at end of the received message.

*raise_on_truncation*, a ``bool``.  If ``True``, raise an exception if
the TC bit is set.

Raises if the message is malformed, if network errors occur, of if
there is a timeout.

If *destination* is not ``None``, returns a ``(dns.message.Message, float)``
tuple of the received message and the received time.

If *destination* is ``None``, returns a
``(dns.message.Message, float, tuple)``
tuple of the received message, the received time, and the address where
the message arrived from.

*ignore_errors*, a ``bool``.  If various format errors or response
mismatches occur, ignore them and keep listening for a valid response.
The default is ``False``.

*query*, a ``dns.message.Message`` or ``None``.  If not ``None`` and
*ignore_errors* is ``True``, check that the received message is a response
to this query, and if not keep listening for a valid response.
r�)r�r�r�r�rDN)
r8r�r'rrrr�	Truncatedr	r9)rEr�rr�r�r�r�r�rDrErFr
r��
received_timer�es                r�receive_udprLs��|�D�
�(��u�j�A���#��K�K��4E�
�
�
��	�	��
�	����%�%���'�!1� /�$7�
&��A�6�U�.�u�7H�7H��7K�7K����%�%��l�3�3��1�{�{�$�$�
	���%��)�)�!�)�)�+�6�6�����	����		�s$�"B�D�7.C,�+C,�,D�D�5c���UR5n[XXES5up�n[U5unnU
(a[R"U
5nO U
ce[U
[RU5nUn[UX�U5 [UUUUUURURUU	UU5unnUU-
UlU(dURU5(d[eUsSSS5 $!,(df   O=fe)a�Return the response obtained after sending a query via UDP.

*q*, a ``dns.message.Message``, the query to send

*where*, a ``str`` containing an IPv4 or IPv6 address,  where
to send the message.

*timeout*, a ``float`` or ``None``, the number of seconds to wait before the
query times out.  If ``None``, the default, wait forever.

*port*, an ``int``, the port send the message to.  The default is 53.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying
the source address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message.
The default is 0.

*ignore_unexpected*, a ``bool``.  If ``True``, ignore responses from
unexpected sources.

*one_rr_per_rrset*, a ``bool``.  If ``True``, put each RR into its own
RRset.

*ignore_trailing*, a ``bool``.  If ``True``, ignore trailing
junk at end of the received message.

*raise_on_truncation*, a ``bool``.  If ``True``, raise an exception if
the TC bit is set.

*sock*, a ``socket.socket``, or ``None``, the socket to use for the
query.  If ``None``, the default, a socket is created.  Note that
if a socket is provided, it must be a nonblocking datagram socket,
and the *source* and *source_port* are ignored.

*ignore_errors*, a ``bool``.  If various format errors or response
mismatches occur, ignore them and keep listening for a valid response.
The default is ``False``.

Returns a ``dns.message.Message``.
TN)r�r�r,r�r�r4r5�
SOCK_DGRAMrCrLr��macrr	rx)r�r�rr=rDr�r�r�r�rDrErEr
rCr��
begin_timerrr�rrJs                     r�udprR�s���p
�9�9�;�D� 7�
�V�$�!��R�f� .�g�6��Z���0:�0F�0F�t�0L���~��~�
��V�.�.��
7��	�q���D�z�2�(�
�����
�I�I�
�E�E����
�
���M���+�������q�!1�!1����)
����,	��
s
�/A(C!�!
C/�udp_sock�tcp_sockc��[UUUUUUUUUSU	U5nUS4$![RRa [	UUUUUUUUU
5	nUS4s$f=f)aReturn the response to the query, trying UDP first and falling back
to TCP if UDP results in a truncated response.

*q*, a ``dns.message.Message``, the query to send

*where*, a ``str`` containing an IPv4 or IPv6 address,  where to send the message.

*timeout*, a ``float`` or ``None``, the number of seconds to wait before the query
times out.  If ``None``, the default, wait forever.

*port*, an ``int``, the port send the message to.  The default is 53.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying the source
address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message. The default is
0.

*ignore_unexpected*, a ``bool``.  If ``True``, ignore responses from unexpected
sources.

*one_rr_per_rrset*, a ``bool``.  If ``True``, put each RR into its own RRset.

*ignore_trailing*, a ``bool``.  If ``True``, ignore trailing junk at end of the
received message.

*udp_sock*, a ``socket.socket``, or ``None``, the socket to use for the UDP query.
If ``None``, the default, a socket is created.  Note that if a socket is provided,
it must be a nonblocking datagram socket, and the *source* and *source_port* are
ignored for the UDP query.

*tcp_sock*, a ``socket.socket``, or ``None``, the connected socket to use for the
TCP query.  If ``None``, the default, a socket is created.  Note that if a socket is
provided, it must be a nonblocking connected stream socket, and *where*, *source*
and *source_port* are ignored for the TCP query.

*ignore_errors*, a ``bool``.  If various format errors or response mismatches occur
while listening for UDP, ignore them and keep listening for a valid response. The
default is ``False``.

Returns a (``dns.message.Message``, tcp) tuple where tcp is ``True`` if and only if
TCP was used.
TF)rRrrrI�tcp)
r�r�rr=rDr�r�r�r�rSrTrErs
             r�udp_with_fallbackrW�s���r ��
������������

���%� � ���;�;� � � ��
���������

���$��� �s��5A�Ac�&�SnUS:�a=URU5nUS:Xa[S5eU[U5-nX4-
nUS:�aM=U$![[R
4a [
X5 N1[Ra [X5 NQf=f)z�Read the specified number of bytes from sock.  Keep trying until we
either get the desired amount, or we hit EOF.
A Timeout exception will be raised if the operation is not completed
by the expiration time.
rr�EOF)	�recv�EOFErrorr�r6r��SSLWantReadErrorr��SSLWantWriteErrorr�)rE�countrr�rBs     r�	_net_readr_7s���	�A�
�!�)�		1��	�	�%� �A��C�x��u�o�%��S��V�O�E�
�F�A�
�!�)�
�H��	 ��!5�!5�6�	1��t�0��$�$�	1��t�0�	1�s�4A�%B�/B�Bc��Sn[U5nX4:aX0RXS5-
nX4:aMgg![[R4a [X5 N0[Ra [X5 NPf=f)z�Write the specified data to the socket.
A Timeout exception will be raised if the operation is not completed
by the expiration time.
rN)r�r;r6r�r]r�r\r�)rEr<r�current�ls     r�
_net_writercLsr��
�G��D�	�A�
�+�	1��y�y��h��0�0�G��+�� ��!6�!6�7�	1��t�0��#�#�	1��t�0�	1�s�2�%A:�A:�9A:c��[U[RR5(aUR	SS9nO[U5R
SS5U-n[R"5n[XU5 [U5U4$)a_Send a DNS message to the specified TCP socket.

*sock*, a ``socket``.

*what*, a ``bytes`` or ``dns.message.Message``, the message to send.

*expiration*, a ``float`` or ``None``, the absolute time at which
a timeout exception should be raised.  If ``None``, no timeout will
occur.

Returns an ``(int, float)`` tuple of bytes sent and the sent time.
T)�prepend_lengthr��big)	r�rrr@r�r��to_bytesrrc)rEr>r�tcpmsgrAs     r�send_tcpri\sl��$�$����+�+�,�,����T��2��
�T��#�#�A�u�-��4���	�	��I��t�Z�(���K��#�#rc���[USU5n[R"SU5un[XU5n[R"5n	[R
R
UUUUUS9n
X�4$)a�Read a DNS message from a TCP socket.

*sock*, a ``socket``.

*expiration*, a ``float`` or ``None``, the absolute time at which
a timeout exception should be raised.  If ``None``, no timeout will
occur.

*one_rr_per_rrset*, a ``bool``.  If ``True``, put each RR into its own
RRset.

*keyring*, a ``dict``, the keyring to use for TSIG.

*request_mac*, a ``bytes`` or ``None``, the MAC of the request (for TSIG).

*ignore_trailing*, a ``bool``.  If ``True``, ignore trailing
junk at end of the received message.

Raises if the message is malformed, if network errors occur, of if
there is a timeout.

Returns a ``(dns.message.Message, float)`` tuple of the received message
and the received time.
r��!Hr�)r_�struct�unpackrrrr)rErr�r�r�r��ldatarbr
rJrs           r�receive_tcprozso��B
�d�A�z�*�E��=�=��u�%�D�Q��T�j�)�D��I�I�K�M���������)�'�	�	�A�
��rc�X�URU5nUS:XagU[R[R[R4;a9[X5 UR
[R[R5nUS:wa [U[R"U55egr\)
�
connect_ex�errno�EINPROGRESS�EWOULDBLOCK�EALREADYr��
getsockoptr5�
SOL_SOCKET�SO_ERROR�OSError�os�strerror)r�rBr�errs    rr7r7�s}��
�,�,�w�
�C�
�a�x��
�u� � �%�"3�"3�U�^�^�D�D��1�)��l�l�6�,�,�f�o�o�>��
�a�x��c�2�;�;�s�+�,�,�rc		���UR5n	[U5up�U(a[R"U5nO0[	XXES5up�nU
ce[U
[RU5nUnU(d
[UWU5 [X�U5 [X�X`RURU5unnUU
-
Ul
URU5(d[eUsSSS5 $!,(df   O=fe)aUReturn the response obtained after sending a query via TCP.

*q*, a ``dns.message.Message``, the query to send

*where*, a ``str`` containing an IPv4 or IPv6 address, where
to send the message.

*timeout*, a ``float`` or ``None``, the number of seconds to wait before the
query times out.  If ``None``, the default, wait forever.

*port*, an ``int``, the port send the message to.  The default is 53.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying
the source address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message.
The default is 0.

*one_rr_per_rrset*, a ``bool``.  If ``True``, put each RR into its own
RRset.

*ignore_trailing*, a ``bool``.  If ``True``, ignore trailing
junk at end of the received message.

*sock*, a ``socket.socket``, or ``None``, the connected socket to use for the
query.  If ``None``, the default, a socket is created.  Note that
if a socket is provided, it must be a nonblocking connected stream
socket, and *where*, *port*, *source* and *source_port* are ignored.

Returns a ``dns.message.Message``.
TN)r�r,r�r�r�r4r5r6r7riror�rPrr	rx)r�r�rr=rDr�r�r�rEr
rQrrrCr�r�rrJs                  rrVrV�s���V
�9�9�;�D�-�g�6��Z��0:�0F�0F�t�0L��$;���d�%
�!��&��~��~�
��V�/�/��
8��	�q���Q��Z�0���*�%�(�
�+�Y�Y�����
���M���+����}�}�Q������
����	��
s
�.A-C%�%
C3c��UR5 g![Ra [X5 O$[Ra [X5 Of=fMYr)�do_handshaker�r\r�r]r�r�s  r�_tls_handshaker��sO��
�	.�
�N�N�����#�#�	.��q�-��$�$�	.��q�-�	.��
s��A�A�A�check_hostname�alpnsc��[RRU5up4[R"X4S9n[R
RUlXlUSLa[RUl
UbURU5 U$)a%Make an SSL context

If *verify* is ``True``, the default, then certificate verification will occur using
the standard CA roots.  If *verify* is ``False``, then certificate verification will
be disabled.  If *verify* is a string which is a valid pathname, then if the
pathname is a regular file, the CA roots will be taken from the file, otherwise if
the pathname is a directory roots will be taken from the directory.

If *check_hostname* is ``True``, the default, then the hostname of the server must
be specified when connecting and the server's certificate must authorize the
hostname.  If ``False``, then hostname checking is disabled.

*aplns* is ``None`` or a list of TLS ALPN (Application Layer Protocol Negotiation)
strings to use in negotiation.  For DNS-over-TLS, the right value is `["dot"]`.
)�cafile�capathF)r�	_tls_util�#convert_verify_to_cafile_and_capathr��create_default_context�
TLSVersion�TLSv1_2�minimum_versionr��	CERT_NONEr"�set_alpn_protocols)r�r�r�r�r�r�s      r�make_ssl_contextr�sq��(�]�]�F�F�v�N�N�F��,�,�F�J�K�#&�.�.�"8�"8�K��!/��
���"%�-�-������&�&�u�-��rc� �[XSLS/5$)N�dot)r�)r�r�s  r�_make_dot_ssl_contextr�'s���F�4�$?�%��I�Irc��U(a[UUUUUUUUU5	$UR5n[U5up�[XXES5unnnUceU	c[	X�SLS/5n	[U[RU	U
US9n[UUU5 [UU5 [UX�5 [UX�URURU5unnUU
-
UlURU5(d[ eUsSSS5 $!,(df   O=fe)a�Return the response obtained after sending a query via TLS.

*q*, a ``dns.message.Message``, the query to send

*where*, a ``str`` containing an IPv4 or IPv6 address,  where
to send the message.

*timeout*, a ``float`` or ``None``, the number of seconds to wait before the
query times out.  If ``None``, the default, wait forever.

*port*, an ``int``, the port send the message to.  The default is 853.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying
the source address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message.
The default is 0.

*one_rr_per_rrset*, a ``bool``.  If ``True``, put each RR into its own
RRset.

*ignore_trailing*, a ``bool``.  If ``True``, ignore trailing
junk at end of the received message.

*sock*, an ``ssl.SSLSocket``, or ``None``, the socket to use for
the query.  If ``None``, the default, a socket is created.  Note
that if a socket is provided, it must be a nonblocking connected
SSL stream socket, and *where*, *port*, *source*, *source_port*,
and *ssl_context* are ignored.

*ssl_context*, an ``ssl.SSLContext``, the context to use when establishing
a TLS connection. If ``None``, the default, creates one with the default
configuration.

*server_hostname*, a ``str`` containing the server's hostname.  The
default is ``None``, which means that no hostname is known, and if an
SSL context is created, hostname checking will be disabled.

*verify*, a ``bool`` or ``str``.  If a ``True``, then TLS certificate verification
of the server is done using the default CA bundle; if ``False``, then no
verification is done; if a `str` then it specifies the path to a certificate file or
directory which will be used for verification.

Returns a ``dns.message.Message``.

TNr�)r�r�rD)rVr�r,r�r�r�r5r6r7r�riror�rPrr	rx)r�r�rr=rDr�r�r�rEr�r�r�r
rQrrCr�r�rrJs                    r�tlsr�-s0��z��
���������

�
	
�
�9�9�;�D�-�g�6��Z� 7�
�V�$�!��R��f��>��>���&�v�d�/J�U�G�T��	�
�����'��
�
���K��,��q�*�%���D�%�(�
�z�Q�Y�Y�����
���M���+����}�}�Q������!
�
�
��$	��
s
�;A3C8�8
Dr�c�>�[RR(d[S5eUbU
cUn
SUlUR5nU(a[R"S5n
UnO[RRX�S9n
U
nU
 U(dWRXXE5n[U5unnWRU5nURUS5 UR[U55nSSS5 [R"5nSSS5 [R R#UUR$UR&UUS9n[)WW-
S5UlUR+U5(d[,eU$!,(df   N�=f!,(df   N�=f)a+Return the response obtained after sending a query via DNS-over-QUIC.

*q*, a ``dns.message.Message``, the query to send.

*where*, a ``str``, the nameserver IP address.

*timeout*, a ``float`` or ``None``, the number of seconds to wait before the query
times out. If ``None``, the default, wait forever.

*port*, a ``int``, the port to send the query to. The default is 853.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying the source
address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message. The default is
0.

*one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its own RRset.

*ignore_trailing*, a ``bool``. If ``True``, ignore trailing junk at end of the
received message.

*connection*, a ``dns.quic.SyncQuicConnection``.  If provided, the connection to use
to send the query.

*verify*, a ``bool`` or ``str``.  If a ``True``, then TLS certificate verification
of the server is done using the default CA bundle; if ``False``, then no
verification is done; if a `str` then it specifies the path to a certificate file or
directory which will be used for verification.

*hostname*, a ``str`` containing the server's hostname or ``None``.  The default is
``None``, which means that no hostname is known, and if an SSL context is created,
hostname checking will be disabled.  This value is ignored if *url* is not
``None``.

*server_hostname*, a ``str`` or ``None``.  This item is for backwards compatibility
only, and has the same meaning as *hostname*.

Returns a ``dns.message.Message``.
zDNS-over-QUIC is not available.Nr)r"r#Tr�r
)rr�r%rr&r�r�r�r'r(r,r)r;r+rrrrr�r�r,r	rx)r�r�rr=rDr�r�r�r�r�r�r�r
r.r0r/r1rr2r3rs                     rr�r��sb��n�8�8����5�6�6��"�x�'7�"���A�D��9�9�;�D��5?�5K�5K�D�5Q��#���(�(�*�*��+�
����	��(�0�0��V��N�-�W�5���
�
�
'�
'��
0�F��K�K��d�#��>�>�*�Z�"8�9�D�1������
�	�������	�	��M�M�)�'�	�	�A���%���
%�A�F��=�=�������H�1�
0��

��s$�9F�-E=�1F�=
F	�F�
Fc�$�\rSrSrSrSrSrSrSrg)�UDPModei�z�How should UDP be used in an IXFR from :py:func:`inbound_xfr()`?

NEVER means "never use UDP; always use TCP"
TRY_FIRST means "try to use UDP but fall back to TCP if needed"
ONLY means "raise ``dns.xfr.UseTCP`` if trying UDP does not succeed"
rr�r�rdN)	rPrQrRrSrv�NEVER�	TRY_FIRST�ONLYrTrdrrr�r��s���
�E��I��Drr��txn_managerr��serialc#�n# �URSRnU[RR:HnUR5nUR
5n	[U[R5=(a UR[R:Hn
U
(a[XSU5 O/[R"S[U	55U	-n[XU5 [R R#XX:5nSn
SnSnU
(d�[%U5unnUb	UbUU:�aUnU
(a['USU5unnO3[)USU5n[R*"SU5un[)UUU5n[R,R/UUR0UR2SUUU
(+US9nUR5U5n
Uv� UR6nU
(dM�UR0(a3Ub0UR8(d[R:R=S	5eSSS5 g!,(df   g=f7f)
z'Given a socket, does the zone transfer.rNrkFrHr�T)r�r��xfr�origin�tsig_ctx�multir�zmissing TSIG)�question�rdtyper�	rdatatype�IXFR�from_wire_originr�r�r5r�rOr=rl�packr�rcr��Inboundr,r8r_rmrrr�rP�process_messager��had_tsigr
�	FormError)r�r�rFr�rrr��is_ixfrr�r
�is_udprh�inbound�doner�rr@�mexpiration�rwirernrbs                     r�_inbound_xfrr�s�����^�^�A�
�
%�
%�F���
�
�*�*�*�G�
�
)�
)�
+�F��=�=�?�D�
��6�=�=�
)�
I�a�f�f��8I�8I�.I�F�
��!�4��,����T�3�t�9�-��4���1�j�)�	������f�	=������(,���-�g�6��Q���"��&�;��+C�(���&�q�%��=�
���!�!�Q��4���}�}�T�5�1���!�!�Q��4�����%�%���
�
�!�I�I���!�!�z�!(�&�	�A��*�*�1�-�D��G��z�z�H�1�$�2�=�=�Q�]�1�:�:��-�-�)�)�.�9�9�=
>�	=�	=�s&�C9H5�;CH$�AH$�	H5�$
H2�.H5�zoner��rdclass�keyname�
relativizer+�use_udp�keyalgorithmc	#�V# �"SS[RR5n[U[5(a[R
R
U5n[RRRU5n[RRXU5nU[RR:Xa�URURU[RR [RR"SS9n[R$R
SSSUS35nUR'US	5 UbUR)XgUS9 [+XX�S5unnn
Uce[-U	5unnU"X5nU
(a)U[RR:wa[/S5eU
(a[0R2O[0R4n[7UUU
5n[9UUU5 [;UUUX�U5S
hv�N S
S
S
5 g
N
!,(df   g
=f7f)
a/Return a generator for the responses to a zone transfer.

*where*, a ``str`` containing an IPv4 or IPv6 address,  where
to send the message.

*zone*, a ``dns.name.Name`` or ``str``, the name of the zone to transfer.

*rdtype*, an ``int`` or ``str``, the type of zone transfer.  The
default is ``dns.rdatatype.AXFR``.  ``dns.rdatatype.IXFR`` can be
used to do an incremental transfer instead.

*rdclass*, an ``int`` or ``str``, the class of the zone transfer.
The default is ``dns.rdataclass.IN``.

*timeout*, a ``float``, the number of seconds to wait for each
response message.  If None, the default, wait forever.

*port*, an ``int``, the port send the message to.  The default is 53.

*keyring*, a ``dict``, the keyring to use for TSIG.

*keyname*, a ``dns.name.Name`` or ``str``, the name of the TSIG
key to use.

*relativize*, a ``bool``.  If ``True``, all names in the zone will be
relativized to the zone origin.  It is essential that the
relativize setting matches the one specified to
``dns.zone.from_xfr()`` if using this generator to make a zone.

*lifetime*, a ``float``, the total number of seconds to spend
doing the transfer.  If ``None``, the default, then there is no
limit on the time the transfer may take.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying
the source address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message.
The default is 0.

*serial*, an ``int``, the SOA serial number to use as the base for
an IXFR diff sequence (only meaningful if *rdtype* is
``dns.rdatatype.IXFR``).

*use_udp*, a ``bool``.  If ``True``, use UDP (only meaningful for IXFR).

*keyalgorithm*, a ``dns.name.Name`` or ``str``, the TSIG algorithm to use.

Raises on errors, and so does the generator.

Returns a generator of ``dns.message.Message`` objects.
c��\rSrSrSrSrS\RR4Sjr	Sr
SS\S\RR4SjjrS	rg
)�$xfr.<locals>.DummyTransactionManageri�c�X�XU(a[RROU4Ulgr)rr��empty�info)r#r�r�s   rr�-xfr.<locals>.DummyTransactionManager.__init__�s���z�S�X�X�^�^�v�V�D�Irc��UR$r�r��r#s r�origin_information�7xfr.<locals>.DummyTransactionManager.origin_information�s���9�9�rrnc��[errJr�s r�	get_class�.xfr.<locals>.DummyTransactionManager.get_class�rkrc��[errJr�s r�reader�+xfr.<locals>.DummyTransactionManager.reader�rkr�replacementc�h�"SS5n[[RRU"55$)Nc� �\rSrSrSrSrSrg)�Exfr.<locals>.DummyTransactionManager.writer.<locals>.DummyTransactioni�c��grrd)r#ra�kws   r�nop�Ixfr.<locals>.DummyTransactionManager.writer.<locals>.DummyTransaction.nop�s��rc��UR$r)r�)r#r@s  r�__getattr__�Qxfr.<locals>.DummyTransactionManager.writer.<locals>.DummyTransaction.__getattr__�s���8�8�OrrdN)rPrQrRrSr�r�rTrdrr�DummyTransactionr��s���$rr�)rr�transaction�Transaction)r#r�r�s   r�writer�+xfr.<locals>.DummyTransactionManager.writer�s)��
$�
$�����3�3�5E�5G�H�Hrr�N)F)rPrQrRrSrr�r�
rdataclass�
RdataClassr�r��boolr�r�r�rTrdrr�DummyTransactionManagerr��sN��	W�	�	&�s�~�~�8�8�	&�	&�	I�d�	I�s���7R�7R�	I�	Irr�T)�create�IN�SOAz. . z 0 0 0 0rN)�	algorithmzcannot do a UDP AXFR)rr��TransactionManagerr�r�r��	from_textr��	RdataType�maker�
make_queryr��
find_rrset�	authorityr�r�r��rdata�add�use_tsigr�r,r�r5rOr6r4r7r�)r�r�r�r�rr=r�r�r�r+rDr�r�r�r�r�r��rrset�soarCr�r@r�tm�	sock_typer�s                          rr�r�;s����JI�#�/�/�"D�"D�I�.�$�����x�x�!�!�$�'��
�]�]�
$�
$�
)�
)�&�
1�F������t�W�5�A�
����#�#�#����
�K�K��s�~�~�0�0�#�-�-�2C�2C�D��
���i�i�!�!�$���f�X�X�/F�G��
�	�	�#�q����	�
�
�7�|�
�<� 7�
�V�$�!��R��f��>��>�$�X�.�O�Q�
�	 ��	2�B��6�S�]�]�/�/�/��/�0�0�%,��!�!�&�2D�2D�I�	�R��F�	+�q���K��,���A�q�&�:�F�F�F�
,�	+�F�
,�	+�s0�G&H)�( H�H�	H�
	H)�H�
H&�"H)�udp_modec		�D�Uc"[RRU5up)O[RRU5n	[	XXgS5up�nU
ce[U5up�URSR[RR:Xa[U[R:waG[U
[RU5n[X�U
5 [!XX)XM5HnM SSS5 g[U
[R&U5n[X�U
5 [!XX)XM5HnM SSS5 g![RR"a U[R$:XaeOf=fSSS5 M�!,(df   N�=f!,(df   g=f)aMConduct an inbound transfer and apply it via a transaction from the
txn_manager.

*where*, a ``str`` containing an IPv4 or IPv6 address,  where
to send the message.

*txn_manager*, a ``dns.transaction.TransactionManager``, the txn_manager
for this transfer (typically a ``dns.zone.Zone``).

*query*, the query to send.  If not supplied, a default query is
constructed using information from the *txn_manager*.

*port*, an ``int``, the port send the message to.  The default is 53.

*timeout*, a ``float``, the number of seconds to wait for each
response message.  If None, the default, wait forever.

*lifetime*, a ``float``, the total number of seconds to spend
doing the transfer.  If ``None``, the default, then there is no
limit on the time the transfer may take.

*source*, a ``str`` containing an IPv4 or IPv6 address, specifying
the source address.  The default is the wildcard address.

*source_port*, an ``int``, the port from which to send the message.
The default is 0.

*udp_mode*, a ``dns.query.UDPMode``, determines how UDP is used
for IXFRs.  The default is ``dns.query.UDPMode.NEVER``, i.e. only use
TCP.  Other possibilities are ``dns.query.UDPMode.TRY_FIRST``, which
means "try UDP but fallback to TCP if needed", and
``dns.query.UDPMode.ONLY``, which means "try UDP and raise
``dns.xfr.UseTCP`` if it does not succeed.

Raises on errors.
NTr)rr�r��extract_serial_from_queryr�r,r�r�r�r�r�r�r4r5rOr7r��UseTCPr�r6)r�r�rFr=rr+rDr�r�r�rCr�r@rr�s               r�inbound_xfrr��s_��^
�}��'�'�,�,�[�9�������2�2�5�9�� 7�
�V�$�!��R�f��>��>�$�X�.�O�Q��~�~�a����3�=�=�#5�#5�5�(�g�m�m�:S�
��V�.�.��
7�1��Q�Z�0�
�%��E�7��A����8�
7�
�R��+�+�V�	4�����,��k�e�W�Q�A��R�
5�	4��	�7�7�>�>�
��w�|�|�+��,�
��+�8�
7�
7��
5�	4�s6�
F�D<�!F�<3E2�/F�1E2�2F�
F�
F)TrrO)	Nr�NrFFTTN)
NNFFNrFFFN)
NrMNrFFFFNF)
NrMNrFFFNNF)NFNrF)NrMNrFFN)TTN)
N�UNrFFNNNT)
Nr�NrFFNTNN)�rvr�r��enumrrrzr�r�r5rlr�urllib.parser��typingrrrrrr�
dns._featuresr�
dns._tls_util�
dns.exception�dns.inet�dns.message�dns.name�dns.quic�	dns.rdata�dns.rdataclass�
dns.rdatatype�dns.transaction�dns.tsig�dns.xfrr��ImportError�dns._no_ssl�_no_sslrr�	_features�have�_have_httpx�httpcore._backends.syncr:r��NetworkBackend�_CoreNetworkBackend�	_backends�sync�
SyncStreamr8r�
HTTPTransportrXr��
AddressFamilyr�
SocketKindrprq�__annotations__r
�DNSExceptionrsr�rxr{rr��
TransferErrorr,r�r�r�r�r�r�r4�
SSLContextr�r�r�r�r�r�r��IntEnumr�rer�rr@�floatr�rr��Headers�bytesrr r�r�r8r=rC�tsig�KeyrLrRrWr_rcriror7rVr�r�r�r�r�r�r�r�r�r��AXFRr�r��default_algorithmr�r�r�r�rdrr�<module>r!s���$�
����	�
��
�
���=�=����������������
�2��m�m� � ��'���"��"�1�1���(�(�-�-�8�8�O�4&�-�4&�l��,�,��,
&�
&� ��*����s�"�*�
�
�
�*��*��]�]�	*�������C���!2�!2�C�8�&�-�-�G���
H�s�}�}�1�1�H�G�#�-�-�)�)�G��C�M�M�&�&��
�C�M�M�&�&�����%�%�
�$�(�80�0�	)�
�"=A�)%�^�����s�"��
�
�
��
�$�J���]�]�	�J37��'����s�"�'�
�
�
�'����'��X�X�]�]�S�(�4�/�	'�

�$�J�'�	�]�]�
'�V
-���.�/����
�$�,�,�
�&!����"�!����$(�*.�26��"�"� +� 3� 3�!L
�
�{�{���L
��L
��T�\�L
��	L
�

�$�J�L
��
L
��L
��L
��4�Z�L
��L
��L
��T�z�L
�
�3�J����'�L
��.�/�L
�
�L
� �!L
�"	�[�[���#L
�^�#�(�(�*�*��%��E��O�3�8�8�+�+�O�3�O�e�O��O�*!����"�!�*.��59�:
�
�{�{���:
��:
�

�:
��T�\�	:
�
�:
�
�$�J�
:
��:
��:
��:
�
�3�J����'�:
��:
����+�+�d�2�:
�	�[�[���:
�z	1�1�& $�	�

��

�+�+�
�
��
%�������	�
�3��:���>#�#�#�"�8<� #�!� %��(,�g4�

�g4��t��g4����g4��	g4�
�g4��#�(�(�-�-������-�
.��
5�
g4����g4��g4��g4��g4��;�;����%�g4�	�g4�Z!����#�"�!� %���Y�
�{�{���Y��Y��T�\�Y��	Y�

�$�J�Y��
Y��Y��Y��Y��Y���*�Y��Y�	�[�[���Y�~!����#�"�!����U �
�{�{���U ��U ��T�\�U ��	U �

�$�J�U ��
U ��U ��U ��U ��D�j�U ��D�j�U ��U ��3�;�;����$�%�U �p
�*
1�& $�$�

�$�

�+�+�
�
��
%�$����$��3��:��	$�@ $�"�8<� #�!�
,�

�,����,��,��#�(�(�-�-������-�
.��
5�	,�
���,��
,��3�;�;����%�&�,�^-�!����"�!��C�
�{�{���C��C��T�\�C��	C�

�$�J�C��
C��C��C���*�C�	�[�[���C�L.���"���3�J������9�t���	�^�^�	�DJ��4�Z�J�)-���J��^�^�J�!����"�!�!%�)-�"&��i�
�{�{���i��i��T�\�i��	i�

�$�J�i��
i��i��i��-�-�$�
�i����$�&�i��4�Z�i�
�3�J�i�	�[�[���i�^!����"�!�59���"&�^
�
�{�{���^
��^
��T�\�^
��	^
�

�$�J�^
��
^
��^
��^
����+�+�d�2�^
�
�3�J�^
��D�j�^
��4�Z�^
�	�[�[���^
�B

�d�l�l�

�1:����3�3�1:�
�}�}�s�}�}�$�1:��;�;���1:�
�$�J�	1:�
�T�\�1:����
1:�	�1:�n-0�M�M�,>�,>�/2�~�~�/@�/@� ��8<�*.��!�����(+���(B�(B�sG��sG�

�(�(�-�-�#�
�sG�
�M�M�#�#�c�)�sG��^�^�
&�
&��
,�	sG�
�T�\�sG��
sG��#�(�(�-�-������-�
.��
5�sG��X�X�]�]�S�
 �4�
'�sG��sG��d�l�sG�
�$�J�sG��sG�
�sG��sG��(�(�-�-�#�%�sG� 	�!sG�r)-�� �!����
�
�I��I����3�3�I��;�;����%�I��	I�
�T�\�I��d�l�
I�
�$�J�I��I��I�
�I��A4�����s�5f � f0�/f0

Youez - 2016 - github.com/yon3zu
LinuXploit