
    h                         S SK r S SKJr  \ R                  " S5      r\ R                  " S5      r\ R                  " S5      r " S S5      rg)    N)StringIOz(_x[0-9a-fA-F]{4}_)z([\x00-\x08\x0b-\x1f])z["&<>
]c                       \ rS rSrSrS rS rS rS rS r	/ 4S jr
/ 4S	 jrS
 r/ 4S jr/ 4S jr/ 4S jr/ 4S jr/ 4S jrS r/ 4S jr/ 4S jr/ 4S jr/ 4S jrS rS r\S 5       rSrg)	XMLwriter   z
Simple XML writer class.

c                      S U l         SU l        g NFfhinternal_fhselfs    gC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\xlsxwriter/xmlwriter.py__init__XMLwriter.__init__   s         c                     Xl         SU l        g r   r	   )r   
filehandles     r   _set_filehandleXMLwriter._set_filehandle"   s     r   c                 x    [        U[        5      (       a  SU l        Xl        g SU l        [	        USSS9U l        g )NFTwzutf-8)encoding)
isinstancer   r   r
   open)r   filenames     r   _set_xml_writerXMLwriter._set_xml_writer'   s4    h))$DG#D8S7;DGr   c                 \    U R                   (       a  U R                  R                  5         g g )N)r   r
   closer   s    r   
_xml_closeXMLwriter._xml_close1   s    GGMMO r   c                 :    U R                   R                  S5        g )Nz8<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
r
   writer   s    r   _xml_declarationXMLwriter._xml_declaration6   s    QRr   c                     U H"  u  p4U R                  U5      nUSU SU S3-  nM$     U R                  R                  SU S35        g N =""<>_escape_attributesr
   r$   r   tag
attributeskeyvalues        r   _xml_start_tagXMLwriter._xml_start_tag:   sQ    $JC++E2EQse2eWA&&C % 	#aj!r   c                 p    U H  u  p4USU SU S3-  nM     U R                   R                  SU S35        g r(   r#   r0   s        r   _xml_start_tag_unencoded"XMLwriter._xml_start_tag_unencodedB   sC     %JCQse2eWA&&C % 	#aj!r   c                 B    U R                   R                  SU S35        g )N</r-   r#   )r   r1   s     r   _xml_end_tagXMLwriter._xml_end_tagK   s    3%qk"r   c                     U H"  u  p4U R                  U5      nUSU SU S3-  nM$     U R                  R                  SU S35        g Nr)   r*   r+   r,   z/>r.   r0   s        r   _xml_empty_tagXMLwriter._xml_empty_tagO   sQ    $JC++E2EQse2eWA&&C % 	#bk"r   c                 p    U H  u  p4USU SU S3-  nM     U R                   R                  SU S35        g r?   r#   r0   s        r   _xml_empty_tag_unencoded"XMLwriter._xml_empty_tag_unencodedW   sC     %JCQse2eWA&&C % 	#bk"r   c           	          UnU H"  u  pVU R                  U5      nUSU SU S3-  nM$     U R                  U5      nU R                  U5      nU R                  R	                  SU SU SU S35        g )Nr)   r*   r+   r,   r-   r;   )r/   _escape_data_escape_control_charactersr
   r$   )r   r1   datar2   end_tagr3   r4   s          r   _xml_data_elementXMLwriter._xml_data_element`   s    $JC++E2EQse2eWA&&C %   &..t4#avRy23r   c                     SnU H"  u  pEU R                  U5      nUSU SU S3-  nM$     U R                  R                  SU SU S35        g )N r)   r*   r+   <cz
 t="s"><v></v></c>r.   )r   indexr2   attrr3   r4   s         r   _xml_string_elementXMLwriter._xml_string_elementm   s]    $JC++E2EauBugQ''D % 	4&
5':;r   c                     SnU H"  u  pEU R                  U5      nUSU SU S3-  nM$     U R                  U5      nU R                  R                  SU SU S35        g )NrM   r)   r*   r+   z<si><tr-   z	</t></si>r/   rF   r
   r$   r   stringr2   rQ   r3   r4   s         r   _xml_si_elementXMLwriter._xml_si_elementw   sm    $JC++E2EauBugQ''D % ""6*tfAfXY78r   c                 B    U R                   R                  SU S35        g )Nz<si>z</si>r#   )r   rW   s     r   _xml_rich_si_elementXMLwriter._xml_rich_si_element   s     	VHE*+r   c                     SnU H"  u  pEU R                  U5      nUSU SU S3-  nM$     U R                  R                  SU SUS S35        g )	NrM   r)   r*   r+   rN   z><v>z.16GrO   r.   )r   numberr2   rQ   r3   r4   s         r   _xml_number_elementXMLwriter._xml_number_element   s_    $JC++E2EauBugQ''D % 	4&VDM:;r   c           	          SnU H"  u  pVU R                  U5      nUSU SU S3-  nM$     U R                  U5      nU R                  U5      nU R                  R                  SU SU SU S35        g )	NrM   r)   r*   r+   rN   z><f>z</f><v>rO   rU   )r   formularesultr2   rQ   r3   r4   s          r   _xml_formula_elementXMLwriter._xml_formula_element   s    $JC++E2EauBugQ''D % ##G,""6*4&WIWVHHEFr   c           	          SnSnU(       a  SnU H"  u  pgU R                  U5      nUSU SU S3-  nM$     U R                  U5      nU R                  R                  SU SU SU S	35        g )
NrM   z xml:space="preserve"r)   r*   r+   rN   z t="inlineStr"><is><tr-   z</t></is></c>rU   )r   rW   preserver2   rQ   t_attrr3   r4   s           r   _xml_inline_stringXMLwriter._xml_inline_string   s     ,F$JC++E2EauBugQ''D % ""6*4& 5fXQvhmTUr   c                     SnU H"  u  pEU R                  U5      nUSU SU S3-  nM$     U R                  R                  SU SU S35        g )NrM   r)   r*   r+   rN   z t="inlineStr"><is>z	</is></c>r.   rV   s         r   _xml_rich_inline_string!XMLwriter._xml_rich_inline_string   s^    $JC++E2EauBugQ''D % 	4& 3F89EFr   c                 
    [         R                  U5      (       d  U$  UR                  SS5      R                  SS5      R                  SS5      R                  SS5      R                  S	S
5      nU$ ! [         a    Us $ f = f)N&&amp;r+   z&quot;r,   &lt;r-   &gt;
z&#xA;xml_escapessearch	TypeErrorreplace)r   	attributes     r   r/   XMLwriter._escape_attributes   s    	%%i00   1 c7+WS(#WS&!WS&!WT7# 	   		s   A3 3BBc                      [         R                  U5      (       d  U$  UR                  SS5      R                  SS5      R                  SS5      nU$ ! [         a    Us $ f = f)Nro   rp   r,   rq   r-   rr   rt   )r   rH   s     r   rF   XMLwriter._escape_data   si    	%%d++ ,
 ||C)11#v>FFsFS	  	K	s   A A"!A"c                      [         R                  SU 5      n [        R                  S U 5      n U R	                  SS5      R	                  SS5      n U $ ! [         a    U s $ f = f)Nz_x005F\1c                 @    S[        U R                  S5      5      S S3$ )N_x   04X_)ordgroup)matchs    r   <lambda>6XMLwriter._escape_control_characters.<locals>.<lambda>   s    Bs5;;q>237q9r   u   ￾_xFFFE_u   ￿_xFFFF_)re_control_chars_1subrw   re_control_chars_2rx   )rH   s    r   rG   $XMLwriter._escape_control_characters   sj    	%))+t<D
 "%%94

 ||Hi0889M  	K	s   A A"!A"r	   N)__name__
__module____qualname____firstlineno____doc__r   r   r   r    r%   r5   r8   r<   r@   rC   rJ   rR   rX   r[   r_   rd   ri   rl   r/   rF   staticmethodrG   __static_attributes__ r   r   r   r      s    
!!
<
S .0 " 8: "# .0 # 8: # 79 4 57 < 24 
9,
 68 < @B 
G ?A V" :< G"  r   r   )reior   compiler   r   ru   r   r   r   r   <module>r      sI    
  ZZ 56 ZZ 9: jj$S Sr   