U ÷Šma?ã@s\z ddlZWnek r$dZYnXdd„Zdd„Zdd„Zdd „Zd d „Zddd gZdS) éNcCs.t|tƒr| d¡St|tƒr"|Stdƒ‚dS©NÚasciiz1only str (ascii encoding) and bytes are supported)Ú isinstanceÚstrÚencodeÚbytesÚ TypeError©Údata©r ú@/opt/alt/python38/lib64/python3.8/site-packages/pycares/utils.pyÚ ascii_bytess    r cCsJt|tƒr|St|tƒr>z | d¡WStk r<|YSXtdƒ‚dSr)rrrÚdecodeÚUnicodeDecodeErrorrr r r r Ú maybe_strs    rcCs |D]}t|ƒdkrdSqdS)NéFT)Úord)ÚtextÚcr r r Ú is_all_asciis rcCsL| d¡}g}|D].}t|ƒr0| | d¡¡q| t |¡¡qd |¡S)NÚ.ró.)ÚsplitrÚappendrÚidna2008Újoin)ÚnameÚpartsÚrÚpartr r r Úparse_name_idna2008!s r cCsPt|tƒr6t|ƒr| d¡Stdk r,t|ƒS| d¡St|tƒrD|Stdƒ‚dS)NrÚidnaz only str and bytes are supported)rrrrrr rr)rr r r Ú parse_name+s    r") r!rÚ ImportErrorr rrr r"Ú__all__r r r r Ús