
    yf	                        d dl Z d dlZd dlmc mZ ddlmZ  eed       [ G d de      Z	 G d dej                        Zd	 Ze j                  d
k(  re j                  ne j                  Zd Zd Zedk(  rej$                  dk  rd Zne j(                  j*                  Zedv rd Zd Zye j(                  j.                  Zd Zy)    N   )passthrough_modulez._deprecatedc                       e Zd Zy)compat_HTMLParseErrorN)__name__
__module____qualname__     8/usr/lib/python3/dist-packages/yt_dlp/compat/__init__.pyr   r      s    r   r   c                       e Zd Zd Zy)_TreeBuilderc                      y Nr
   )selfnamepubidsystems       r   doctypez_TreeBuilder.doctype   s    r   N)r   r   r	   r   r
   r   r   r   r      s    r   r   c                 h    t        j                  | t        j                  t                           S )N)target)parser)etreeXML	XMLParserr   )texts    r   compat_etree_fromstringr      s    99T%//"HIIr   javac                     ddl m}  ||       S )N   )shell_quote)utilsr!   )sr!   s     r   compat_shlex_quoter$      s    #q>r   c                 <    t        | t              r| S t        |       S r   )
isinstanceintord)cs    r   
compat_ordr*   #   s    1c"1.A.r   nt)      c                 "   t         j                  j                  |       rRt         j                  j                  t        j                  |             } t         j                  j                  |       rRt         j                  j                  |       S r   )ospathislinkabspathreadlinkrealpath)r0   s    r   compat_realpathr5   *   sT    ggnnT"77??2;;t#45D ggnnT"ww%%r   )r+   cec                    t         j                  j                  d      }|st         j                  j	                  |       S | j                  d      s| S | j                  ddd      j                  d      }|dk  rt        |       }|dkD  r@t         j                  j                  t         j                  j                  |      | d|       n|}|| |d  z   S )NHOME~\/r   r   )r/   environgetr0   
expanduser
startswithreplacefindlenjoindirname)r0   r8   iuserhomes       r   compat_expanduserrG   6   s    zz~~f%77%%d++%KLLsA&++C0q5D	AEFU277<< 5tAayAPT$qr(""r   c           
          ddl m} ddlm}  || j	                         | j
                  | j                          || j                  | j                        t        | d      rd| j                  i      S d      S )z.Convert urllib Request to a networking Requestr    )Request)HTTPHeaderDicttimeoutN)datamethodheaders
extensions)
networkingrI   utils.networkingrJ   get_full_urlrL   
get_methodrN   unredirected_hdrshasattrrK   )urllib_requestrI   rJ   s      r   urllib_req_to_reqrW   E   sw    $1##%N,?,?HaHaHc~55~7W7WX:A.R[:\I~556h h cgh hr   )r/   sysxml.etree.ElementTreer   ElementTreecompat_utilsr   r   
ValueErrorr   TreeBuilderr   r   r   _namecompat_os_namer$   r*   version_infor5   r0   r4   rG   r>   rW   r
   r   r   <module>ra      s    	 
 % % , 8^ ,	J 	5$$ 
J  WW.BGG
/ Tc..7&
 gg&&O \!
#h **hr   