§
    ŽŸjW  ã                   ó2  — d Z ddlZddlmZmZmZ ddlmZmZm	Z	m
Z
mZ ddlmZ dZdZ	 ddlmZ dd	lmZ d
ZdZnH# e$ r@ 	 ddlmZ dZd
Z ej        ded¬¦  «         n# e$ r  ej        ded¬¦  «         Y nw xY wY nw xY wdgZ G d„ de¦  «        Zd„ ZdS )zD
NBConvert Preprocessor for sanitizing HTML rendering of notebooks.
é    N)ÚALLOWED_ATTRIBUTESÚALLOWED_TAGSÚclean)ÚAnyÚBoolÚListÚSetÚUnicodeé   )ÚPreprocessorF)ÚALLOWED_CSS_PROPERTIES)ÚCSSSanitizerT)ÚALLOWED_STYLESzFSupport for bleach <5 will be removed in a future version of nbconverté   )Ú
stacklevelz[The installed bleach/tinycss2 do not provide CSS sanitization, please upgrade to bleach >=5ÚSanitizeHTMLc                   ó  — e Zd ZdZ eded¬¦  «        Z e e¦   «         de	d¬¦  «        Z
 e e¦   «         ded¬¦  «        Z eddd¬¦  «        Z eddd	¬¦  «        Z edh d
£d¬¦  «        Z edddhd¬¦  «        Zd„ Zd„ Zd„ ZdS )r   z A preprocessor to sanitize html.TzAllowed HTML tag attributes)ÚconfigÚdefault_valueÚhelpzList of HTML tags to allowz,Allowed CSS styles if <style> tag is allowedFz:If True, remove unsafe markup entirely instead of escapingz)If True, strip comments from escaped HTML>   ú	image/pngú
image/jpegú
text/latexú
text/plainúapplication/jsonÚmetadataz4Cell output mimetypes to render without modificationz	text/htmlztext/markdownz8Cell output types to display after escaping with Bleach.c                 ó  — |j         dk    r#|                      |j        ¦  «        |_        ||fS |j         dk    r#|                      |j        ¦  «        |_        ||fS |j         dk    r#|                      |j        ¦  «        |_        ||fS dS )a  
        Sanitize potentially-dangerous contents of the cell.

        Cell Types:
          raw:
            Sanitize literal HTML
          markdown:
            Sanitize literal HTML
          code:
            Sanitize outputs that could result in code execution
        ÚrawÚmarkdownÚcodeN)Ú	cell_typeÚsanitize_html_tagsÚsourceÚsanitize_code_outputsÚoutputs)ÚselfÚcellÚ	resourcesÚ
cell_indexs       úm/var/www/finuniver-perm.ru/html/student/venv/lib/python3.11/site-packages/nbconvert/preprocessors/sanitize.pyÚpreprocess_cellzSanitizeHTML.preprocess_cellf   s•   € ð Œ>˜UÒ"Ð"ð ×1Ò1°$´+Ñ>Ô>ˆDŒKØ˜�?Ð"ØŒ>˜ZÒ'Ð'Ø×1Ò1°$´+Ñ>Ô>ˆDŒKØ˜�?Ð"ØŒ>˜VÒ#Ð#Ø×5Ò5°d´lÑCÔCˆDŒLØ˜�?Ð"Øˆtó    c                 óL  — |D ] }|d         dv rŒ|j         }g }|D ]d}|| j        v rŒ|| j        v r:| j                             d|¦  «         |                      ||         ¦  «        ||<   ŒO|                     |¦  «         Œe|D ] }| j                             d|¦  «         ||= Œ!Œ¡|S )zª
        Sanitize code cell outputs.

        Removes 'text/javascript' fields from display_data outputs, and
        runs `sanitize_html_tags` over 'text/html'.
        Úoutput_type)ÚstreamÚerrorzSanitizing %szRemoving %s)ÚdataÚsafe_output_keysÚsanitized_output_typesÚlogÚinfor"   Úappend)r&   r%   Úoutputr1   Ú	to_removeÚkeys         r*   r$   z"SanitizeHTML.sanitize_code_outputs€   sç   € ð ð 	ð 	ˆFà�mÔ$Ð(;Ð;Ð;ØØ”;ˆDØˆIØð 	*ð 	*�Ø˜$Ô/Ð/Ð/ØØ˜$Ô5Ð5Ð5Ø”H—M’M /°3Ñ7Ô7Ð7Ø $× 7Ò 7¸¸S¼	Ñ BÔ B�D˜‘I�Ið ×$Ò$ SÑ)Ô)Ð)Ð)Ø ð ð �Ø”—’˜m¨SÑ1Ô1Ð1Ø˜�I�Iðð ˆr,   c                 óü   — | j         | j        | j        | j        dœ}t          r,t          | j        ¬¦  «        }|                     |¬¦  «         n"t          r|                     | j        ¬¦  «         t          |fi |¤ŽS )z=
        Sanitize a string containing raw HTML tags.
        )ÚtagsÚ
attributesÚstripÚstrip_comments©Úallowed_css_properties)Úcss_sanitizer)Ústyles)
r;   r<   r=   r>   Ú_USE_BLEACH_CSS_SANITIZERr   rB   ÚupdateÚ_USE_BLEACH_STYLESr   )r&   Úhtml_strÚkwargsrA   s       r*   r"   zSanitizeHTML.sanitize_html_tagsœ   sŒ   € ð
 ”IØœ/Ø”ZØ"Ô1ð	
ð 
ˆõ %ð 	.Ý(ÀÄÐLÑLÔLˆMØ�MŠM¨ˆMÑ6Ô6Ð6Ð6Ýð 	.Ø�MŠM ¤ˆMÑ-Ô-Ð-å�XÐ(Ð( Ð(Ð(Ð(r,   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r<   r   r
   r   r;   r   rB   r   r=   r>   r	   r2   r3   r+   r$   r"   © r,   r*   r   r   0   s\  € € € € € Ø*Ð*ð �ØØ(Ø*ðñ ô €Jð
 ˆ4Øˆ‰	Œ	ØØ"Ø)ð	ñ ô €Dð ˆTØˆ‰	Œ	ØØ$Ø;ð	ñ ô €Fð ˆDØØØIðñ ô €Eð
 �TØØØ8ðñ ô €Nð �sØð
ð 
ð 
ð Dðñ ô Ðð !˜SØàØð
ð Hðñ ô Ððð ð ð4ð ð ð8)ð )ð )ð )ð )r,   c                  ó>   — t           rt          t          ¬¦  «        S d S )Nr?   )rC   r   r   rL   r,   r*   Ú_get_default_css_sanitizerrN   °   s!   € Ý ð CÝµ>ÐBÑBÔBÐBØˆ4r,   )rK   ÚwarningsÚbleachr   r   r   Ú	traitletsr   r   r   r	   r
   Úbaser   rC   rE   Úbleach.css_sanitizerr   r   r   ÚImportErrorÚwarnÚDeprecationWarningÚUserWarningÚ__all__r   rN   rL   r,   r*   ú<module>rY      sÄ  ððð ð €€€à :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3à Ð Ð Ð Ð Ð à!Ð ØÐ ð
àMÐMÐMÐMÐMÐMØ1Ð1Ð1Ð1Ð1Ð1à $ÐØÐÐøØð 
ð 
ð 
ð
à)Ð)Ð)Ð)Ð)Ð)à$)Ð!Ø!ÐØˆŒØTØØð	
ñ 	
ô 	
ð 	
ð 	
øð ð 
ð 
ð 
ØˆŒð+àØð		
ñ 	
ô 	
ð 	
ð 	
ð 	
ð
øøøøøð
øøøð, Ð
€ð})ð })ð })ð })ð })�<ñ })ô })ð })ð@ð ð ð ð s3   ª; »B ÁAÁB ÁA:Á7B Á9A:Á:B Á?B 