
    V|hB                         S SK r S SKrSSKJr  SSKJrJrJrJrJ	r	J
r
JrJrJrJr  S rS r " S S	\5      r " S
 S\5      rg)    N   )InfoExtractor   )
ExtractorErrorint_or_none
js_to_jsonmerge_dictsparse_durationtraverse_objtry_callurl_or_noneurljoinvariadicc           	          [         R                  " U R                  U R                  0 SS_SS_SS_SS_S	S
_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS _5      5      5      R	                  5       $ )!Nu   ЅSu   ІIu   ЈJu   АAu   ВBu   ЕEu   КKu   МMu   НHu   ОOu   РPu   СCu   ХX,/.+~=)base64	b64decode	translate	maketransdecode)texts    O/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/txxx.pydecode_base64r+      s    DNN4>> ;#;#; 	#; 	#	;
 	#; 	#; 	#; 	#; 	#; 	#; 	#; 	#; 	#; 	S; 	S;  	S!; ,  	" 
#    c                    ^ [        U5       VV^s/ s HJ  u  nmTR                  S5      (       d  M  [        SU  3[        TS   5      5      [	        U4S j5      US.PML     snn$ s  snnf )N	video_urlhttps://c                  D   > [        T S   5      S   R                  S5      $ )Nformatr   _)r   lstrip)videos   r*   <lambda>get_formats.<locals>.<lambda>+   s    huX&?&B&I&I#&Nr,   )url	format_idquality)	enumerategetr   r+   r   )host
video_fileindexr4   s      `r*   get_formatsr?   (   sr    
 $J/	K 0,%599[3I	$(-k8J*KLNO 0	K K Ks
   A&0A&c                      \ rS rSrSrSSR                  \" \R                  \5      5       S3r	SSR                  \" \R                  \5      5       S3/r
SS	S
SSSSS\\\SSS.S.SS	S
SSSSS\\\SSS.S.SSSSSSSS\\\SSS.S.SSSSSSS S!\\\SS"S.S.S#S$S%S&SS'S(S)\\\SS*S.S.S+S$S%S&SS'S(S)\\\SS*S.S.S,S-S.S/SS0S1S2\\\SS3S.S.S4S-S.S/SS0S1S2\\\SS3S.S.S5S6S7S8SS9S:S;\\\SS<S.S.S=S>S?S@SSASBSC\\\SSDS.S.SESFSGSHSSISJSK\\\SSLS.S.SMSNSOSPSSQSRS;\\\SSSS.S.STSNSOSPSSQSRS;\\\SSSS.S.SUSVSWSXSSYSZS[\\\SS\S.S.S]SVSWSXSSYSZS[\\\SS\S.S.S^S_S`SaSSbScSd\\\SSeS.S.SfS_S`SaSSbScSd\\\SSeS.S./rSkSg jrSh rSirgj)lTxxxIE0   )z
hclips.comz	hdzog.comz
hdzog.tubezhotmovs.comzhotmovs.tubez
inporn.comzprivatehomeclips.comztubepornclassic.comztxxx.comz	txxx.tubezupornia.comzupornia.tubezvjav.comz	vjav.tubezvxxx.comzvoyeurhit.comzvoyeurhit.tubez)(?x)
        https?://(?:www\.)?(?P<host>|zN)/
        (?:videos?[/-]|embed/)(?P<id>\d+)(?:/(?P<display_id>[^/?#]+))?
    z;<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//(?:www\.)?(?:z)/embed/[^"\']*)\1z>https://txxx.com/videos/16574965/digital-desire-malena-morgan/ c54e4ace54320aaf8e2a72df8785939116574965zdigital-desire-malena-morganmp4zDigital Desire - Malena MorganzLois Argentumi     zPhttps://tn.txxx.tube/contents/videos_sources/16574000/16574965/screenshots/1.jpg)id
display_idexttitleuploaderduration
view_count
like_countdislike_count	age_limit	thumbnailr7   md5	info_dictz?https://txxx.tube/videos/16574965/digital-desire-malena-morgan/zhttps://vxxx.com/video-68925/ 1fcff3748b0c5b41fe41d0afa22409e168925zMalena MorganzHuge HugheszIhttps://tn.vxxx.com/contents/videos_sources/68000/68925/screenshots/1.jpgzFhttps://hclips.com/videos/6291073/malena-morgan-masturbates-her-sweet/ a5dd4f83363972ee043313cff85e7e266291073z#malena-morgan-masturbates-her-sweetz#Malena Morgan masturbates her sweetz	John Salti  zOhttps://hctn.nv7s.com/contents/videos_sources/6291000/6291073/screenshots/1.jpgzZhttps://hdzog.com/videos/67063/gorgeous-malena-morgan-will-seduce-you-at-the-first-glance/ f8bdedafd45d1ec2875c43fe33a846d367063z:gorgeous-malena-morgan-will-seduce-you-at-the-first-glancez:Gorgeous Malena Morgan will seduce you at the first glance	momlessoniY  zJhttps://tn.hdzog.com/contents/videos_sources/67000/67063/screenshots/1.jpgz[https://hdzog.tube/videos/67063/gorgeous-malena-morgan-will-seduce-you-at-the-first-glance/zdhttps://hotmovs.com/videos/8789287/unbelievable-malena-morgan-performing-in-incredible-masturantion/ 71d32c51584876472db87e561171a3868789287z@unbelievable-malena-morgan-performing-in-incredible-masturantionz@Unbelievable Malena Morgan performing in incredible masturantionzDavit Sanchezi  zQhttps://tn.hotmovs.com/contents/videos_sources/8789000/8789287/screenshots/10.jpgzehttps://hotmovs.tube/videos/8789287/unbelievable-malena-morgan-performing-in-incredible-masturantion/z3https://inporn.com/video/517897/malena-morgan-solo/ 344db467481edf78f193cdf5820a7cfb517897zmalena-morgan-solozMalena Morgan - Soloz
Ashley Oxy  z3https://iptn.m3pd.com/media/tn/sources/517897_1.jpgzChttps://privatehomeclips.com/videos/3630599/malena-morgan-cam-show/ ea657273e352493c5fb6357fbfa4f1263630599zmalena-morgan-cam-showzmalena morgan cam show
Member9915i"  zPhttps://hctn.nv7s.com/contents/videos_sources/3630000/3630599/screenshots/15.jpgzZhttps://tubepornclassic.com/videos/1015455/mimi-rogers-full-body-massage-nude-compilation/ 2e9a6cf610c9862e86e0ce24f08f44271015455z.mimi-rogers-full-body-massage-nude-compilationz2Mimi Rogers - Full Body Massage (Nude) compilation88bhutoi  zXhttps://tn.tubepornclassic.com/contents/videos_sources/1015000/1015455/screenshots/6.jpgzVhttps://upornia.com/videos/1498858/twistys-malena-morgan-starring-at-dr-morgan-baller/ 7ff7033340bc88a173198b7c22600e4f1498858z2twistys-malena-morgan-starring-at-dr-morgan-ballerz5Twistys - Malena Morgan starring at Dr. Morgan-BallermindgeekzPhttps://tn.upornia.com/contents/videos_sources/1498000/1498858/screenshots/1.jpgzWhttps://upornia.tube/videos/1498858/twistys-malena-morgan-starring-at-dr-morgan-baller/zFhttps://vjav.com/videos/11761/yui-hatano-in-if-yui-was-my-girlfriend2/ 6de5bc1f13bdfc3491a77f23edb1676f11761z'yui-hatano-in-if-yui-was-my-girlfriend2z&Yui Hatano in If Yui Was My Girlfriend	Matheus69i  zJhttps://tn.vjav.com/contents/videos_sources/11000/11761/screenshots/23.jpgzGhttps://vjav.tube/videos/11761/yui-hatano-in-if-yui-was-my-girlfriend2/z\https://voyeurhit.com/videos/332875/charlotte-stokely-elle-alexandra-malena-morgan-lingerie/ 12b4666e9c3e60dafe9182e5d12aae33332875z7charlotte-stokely-elle-alexandra-malena-morgan-lingeriez9Charlotte Stokely, Elle Alexandra, Malena Morgan-LingeriezKyle Robertsi  zPhttps://tn.voyeurhit.com/contents/videos_sources/332000/332875/screenshots/1.jpgz]https://voyeurhit.tube/videos/332875/charlotte-stokely-elle-alexandra-malena-morgan-lingerie/c                     U R                   " X4SU0UD6n[        US5      (       a  U R                  [        SUS    3SS9US9eU=(       d    0 $ )NfatalerrorzTxxx said: T)expectedrq   )_download_jsonr   _error_or_warningr   )selfr7   video_idrq   kwargscontents         r*   	_call_apiTxxxIE._call_api[  sj    %%cK5KFK))((gg./04*AHM ) O O}"r,   c                 0   U R                  U5      R                  SSS5      u  p#nUSS.nU R                  SU SU S3US	S
US9n[        S[        U5      S-  -  5       SS[        U5      S-  -   3nU R                  SU SU SU S3USUS9nUU[	        US5      [	        US5      [        [	        US5      5      [        [	        US5      5      [        [	        US5      5      [        [	        US5      5      S[	        USS[        145      [        X65      S.$ )NrH   r<   rI   XMLHttpRequest)RefererzX-Requested-Withr/   z/api/videofile.php?video_id=z&lifetime=8640000TzDownloading video file info)rq   noteheadersg    .Ar   i  z/api/json/video/86400/z.jsonzDownloading video info)r   r   )r4   rK   )r4   userusername)r4   rM   )r4   
statisticsviewed)r4   r   likes)r4   r   dislikesrG   r4   thumbsrc)rH   rI   rK   rL   rM   rN   rO   rP   rQ   rR   formats)	_match_valid_urlgroupr{   intr   r
   r   r   r?   )	rw   r7   rx   r<   rI   r   r=   slug
video_infos	            r*   _real_extractTxxxIE._real_extractb  sT   %)%:%:3%?%E%EdFT`%a"
!7GH^^tf8
BSTD'Dg $ W
 cS]c1234Adc(mt>S6T5UV^^tf24&(5I3W $ F

 $!*.@A$Z1NO&|J@U'VW%l:?`&ab%l:?_&`a(jBe)fg%j7J2VW"44
 	
r,    N)F)__name__
__module____qualname____firstlineno___DOMAINSjoinmapreescape
_VALID_URL_EMBED_REGEXr   _TESTSr{   r   __static_attributes__r   r,   r*   rA   rA   0   s   H&%%(XXc"))X.F%G$H IJ SSVS[S[\_`b`i`iks\tSuRv  wI  J  KLO185' k
" Q185' k
" /1!$% d
" X1?:# j
" l1VQ# e
" m1VQ# e
" v1\W' l
" w1\W' l
" E1.+$ N
" U12-$ k
" l1JI! s
" h1NL" k
" i1NL" k
" X1C=# e
" Y1C=# e
" n1SP& k
" o1SP& k
APFd
r,   rA   c                   J    \ rS rSrSrSSSSSSS	S
S\\\SSSSS.S./rS rSrg)	PornTopIEi~  zWhttps?://(?P<host>(?:www\.)?porntop\.com)/video/(?P<id>\d+)(?:/(?P<display_id>[^/?]+))?z[https://porntop.com/video/101569/triple-threat-with-lia-lor-malena-morgan-and-dani-daniels/ 612ba7b3cb99455b382972948e200b08101569z9triple-threat-with-lia-lor-malena-morgan-and-dani-danielsrF   z:Triple Threat With Lia Lor, Malena Morgan And Dani Danielsz$md5:285357d9d3a00ce5acb29f39f826dbf6PatrickBushra   rG   iU_20201231z4https://tn.porntop.com/media/tn/sources/101569_1.jpg)rH   rI   rJ   rK   descriptionrL   rM   rN   rO   rP   rQ   	timestampupload_daterR   rS   c                 F   U R                  U5      R                  SSS5      u  p#nU R                  X5      nU R                  U R	                  SUSU[
        SS9USS	9nU R                  [        U R                  S
USSS95      U5      n[        UUS[        X75      S.U5      $ )NrH   r<   rI   z\bschemaJson\s*=zJSON-LDz{[^<]+?VideoObject[^<]+};)transform_sourcecontains_patternTrt   z3window\.initPlayer\(.*}}},\s*'(?P<json_b64c>[^']+)'	json_urls	json_b64c)r   rG   )rH   rI   rQ   r   )r   r   _download_webpage_json_ld_search_jsonr   _parse_jsonr+   _search_regexr	   r?   )rw   r7   rx   r<   rI   webpagejson_ldr=   s           r*   r   PornTopIE._real_extract  s    %)%:%:3%?%E%EdFT`%a"
((7-- 1 1)XPZ8 !2 !:;C4   Q %%mD4F4FB[ 5G 55 '67?A
 $"44	

  	r,   r   N)	r   r   r   r   r   r   r   r   r   r   r,   r*   r   r   ~  sM    kJl1UQA% #%O
 F*r,   r   )r$   r   commonr   utilsr   r   r   r	   r
   r   r   r   r   r   r+   r?   rA   r   r   r,   r*   <module>r      sC     	 !  *KK
] K
\
( (r,   