
    Şi	                        d Z ddlmZ ddlZddlZddlZddlZddlZddl	m
Z
mZ ddlmZ g dZdZ G d d	ej                  Zed
fddZd ZdS )z
PUBLIC API    )annotationsN)PoTokenContextPoTokenRequest)traverse_obj)WEBPO_CLIENTSContentBindingTypeget_webpo_content_binding)WEBMWEBTVHTML5WEB_EMBEDDED_PLAYERWEB_CREATOR	WEB_REMIXTVHTML5_SIMPLYTVHTML5_SIMPLY_EMBEDDED_PLAYERc                      e Zd ZdZdZdZdZdS )r   visitor_datadatasync_idvideo_id
visitor_idN)__name__
__module____qualname__VISITOR_DATADATASYNC_IDVIDEO_ID
VISITOR_ID     gC:\Users\betacode\Desktop\descargarYoutube\venv\Lib\site-packages\yt_dlp/extractor/youtube/pot/utils.pyr   r      s"        !LKHJJJr   r   Frequestr   return,tuple[str | None, ContentBindingType | None]c                   t          | j        d          }|r||vrdS | j        t          j        k    r| j        r| j        t          j        fS | j        t          j        k    s|dv rS| j	        r| j
        t          j        fS |r$t          | j                  }|r|t          j        fS | j        t          j        fS | j        t          j        t          j        fv r| j        t          j        fS dS )N)client
clientName)NN)r   )r   innertube_contextcontextr   GVS_gvs_bind_to_video_idr   r   r   is_authenticateddata_sync_idr   _extract_visitor_idr   r   r   PLAYERSUBS)r!   webpo_clientsbind_to_visitor_idclient_namer   s        r    r	   r	   #   s    w8:RSSK +]::z.,,,1N,!3!<<<.,,,0N0N# 	I');)GGG! E01EFF
 E%'9'DDD');)HHH	^2N4GH	H	H!3!<<<:r   c                N   | sd S t          j        t                    5  t          j        t
          j                            |                     dd                                         }t          j
        d|          r|cd d d            S 	 d d d            n# 1 swxY w Y   d S )N      z[A-Za-z0-9_-]{11})
contextlibsuppress	Exceptionbase64urlsafe_b64decodeurllibparseunquote_plusdecodere	fullmatch)r   r   s     r    r-   r-   @   s    t 
	Y	'	'  -L%%l335 556rT;;A688 	 <,j99 	       		               4s   A"BB!B)r!   r   r"   r#   )__doc__
__future__r   r9   r6   enumr?   urllib.parser;   %yt_dlp.extractor.youtube.pot.providerr   r   yt_dlp.utilsr   __all__r   Enumr   r	   r-   r   r   r    <module>rI      s      " " " " " "       				     P P P P P P P P % % % % % %
N
N
N	             :    r   