§
    tŠtj.5  ã                   óÔ  — d dl Z d dlZd dlZd dlZd dlmc mZ d dl	m
Z
mZmZmZmZ d dlmZ d dlmZ d dlmZ  ej        d¦  «         ej        d„ ¦   «         Zd„ Zd„ Zej                             d	d
dg¦  «        d„ ¦   «         Zdg d¢dddœfdg d¢dddœfdddgdfdddgdfdddgdfdddgdfd d!gd"fd#d$d%gd&fd'd$d(gdd)dœfd*d$d(gd+fd,g d-¢d.fd/g d-¢d0fd1g d-¢d2fd3g d-¢d4fd5g d-¢d6fd7g d-¢d8fd9g d-¢d:fd;g d<¢dddœfd=g d>¢d8fd?g d@¢dddœfd=g dA¢d8fd?g dB¢dddœfd=g dC¢d8fd?g dD¢dddœfd=g d-¢d8fd?g d<¢dddœfdEg d-¢dFfgZdG„ Zej                             d	d
dg¦  «        ej                             dHe¦  «        dI„ ¦   «         ¦   «         Z ej                             d	d
dg¦  «        ej                             dHe¦  «        dJ„ ¦   «         ¦   «         Z!g dK¢Z"ej                             d	d
dg¦  «        ej                             dLe"¦  «        dM„ ¦   «         ¦   «         Z#dN„ Z$ej        j%        ej&        dO„ ¦   «         ¦   «         Z'ej                             dPg dQ¢¦  «        dR„ ¦   «         Z(dS )Sé    N)Ú	DataFrameÚ
MultiIndexÚ	TimestampÚperiod_rangeÚ
read_excel)ÚExcelWriter)ÚExcelFormatterÚjinja2c                 óz   — | t          j        ¦   «         › d�z  }|                     ¦   «          t          |¦  «        S )Nú.xlsx)ÚuuidÚuuid4ÚtouchÚstr)Útmp_pathÚtmps     ú^/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pandas/tests/io/excel/test_style.pyÚ	tmp_excelr      s3   € à
�œ
™œÐ+Ð+Ð+Ñ
+€CØ‡I‚I�K„K€KÝˆs‰8Œ8€Oó    c                 óB  — | j         j        |j         j        k    sJ ‚| j        j        |j        j        k    sJ ‚| j        j        |j        j        k    sJ ‚| j        j        |j        j        k    sJ ‚| j        |j        k    sJ ‚| j        j        |j        j        k    sJ ‚d S ©N)Ú	alignmentÚ__dict__ÚborderÚfillÚfontÚnumber_formatÚ
protection)Úcell1Úcell2s     r   Úassert_equal_cell_stylesr!   "   s¨   € àŒ?Ô# u¤Ô'?Ò?Ð?Ð?Ð?ØŒ<Ô  E¤LÔ$9Ò9Ð9Ð9Ð9ØŒ:Ô %¤*Ô"5Ò5Ð5Ð5Ð5ØŒ:Ô %¤*Ô"5Ò5Ð5Ð5Ð5ØÔ %Ô"5Ò5Ð5Ð5Ð5ØÔÔ$¨Ô(8Ô(AÒAÐAÐAÐAÐAÐAr   c                 ó¾  — t          j        d¦  «        }t          ddddœddddœg¦  «        }t          | d¬¦  «        5 }|                     |d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        |                     | ¦  «        ¦  «        5 }|d                              dd¦  «        j	        j
        d	u sJ ‚|d                              dd¦  «        j        j        �J ‚|d                              dd¦  «        j        j        �J ‚|d                              dd¦  «        j        j        j        �J ‚|d                              dd¦  «        j        j        j        �J ‚|d                              dd¦  «        j        j        j        �J ‚|d                              dd¦  «        j        j        j        �J ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )
NÚopenpyxlé   é   é   )ÚAÚBÚC©ÚengineÚcustom©Ú
sheet_nameF)ÚpytestÚimportorskipr   r   Úto_excelÚ
contextlibÚclosingÚload_workbookÚcellr   Úboldr   Ú
horizontalÚverticalr   ÚbottomÚcolorÚtopÚleftÚright)r   r#   ÚdfÚwriterÚwbs        r   Útest_styler_default_valuesrA   ,   sh  € åÔ" :Ñ.Ô.€HÝ	˜! !¨!Ð,Ð,°A¸AÀAÐ.FÐ.FÐGÑ	HÔ	H€Bå	�Y zÐ	2Ñ	2Ô	2ð 1°fØ
�Š�F xˆÑ0Ô0Ð0ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1õ 
Ô	˜H×2Ò2°9Ñ=Ô=Ñ	>Ô	>ð 
BÀ"à�(Œ|× Ò   AÑ&Ô&Ô+Ô0°EÐ9Ð9Ð9Ð9Ø�(Œ|× Ò   AÑ&Ô&Ô0Ô;ÐCÐCÐCØ�(Œ|× Ò   AÑ&Ô&Ô0Ô9ÐAÐAÐAð �(Œ|× Ò   AÑ&Ô&Ô-Ô4Ô:ÐBÐBÐBØ�(Œ|× Ò   AÑ&Ô&Ô-Ô1Ô7Ð?Ð?Ð?Ø�(Œ|× Ò   AÑ&Ô&Ô-Ô2Ô8Ð@Ð@Ð@Ø�(Œ|× Ò   AÑ&Ô&Ô-Ô3Ô9ÐAÐAÐAÐAð
Bð 
Bð 
Bñ 
Bô 
Bð 
Bð 
Bð 
Bð 
Bð 
Bð 
Bð 
Bøøøð 
Bð 
Bð 
Bð 
Bð 
Bð 
Bs$   ¿A#Á#A'Á*A'ÂD/GÇGÇGr+   Ú
xlsxwriterr#   c                 ó"  — t          j        | ¦  «         t          t          j                             d¦  «                             d¦  «        ¦  «        }t          || ¬¦  «        5 }|                     |d¬¦  «         |j	                             |d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «        }t          j        |                     |¦  «        ¦  «        5 }t          |d         j        |d         j        d¬	¦  «        D ]a\  }}t          |¦  «        t          |¦  «        k    sJ ‚t          ||d¬	¦  «        D ]'\  }}	|j        |	j        k    sJ ‚t#          ||	¦  «         Œ(Œb	 d d d ¦  «         d S # 1 swxY w Y   d S )
Nr%   )r%   r%   r*   Ú	dataframer-   Úunstyledr#   T)Ústrict)r/   r0   r   ÚnpÚrandomÚdefault_rngÚstandard_normalr   r1   Ústyler2   r3   r4   ÚzipÚcolumnsÚlenÚvaluer!   )
r+   r   r>   r?   r#   r@   Úcol1Úcol2r   r    s
             r   Útest_styler_to_excel_unstyledrR   A   s  € õ Ô˜ÑÔÐÝ	•2”9×(Ò(¨Ñ+Ô+×;Ò;¸FÑCÔCÑ	DÔ	D€BÝ	�Y vÐ	.Ñ	.Ô	.ð 9°&Ø
�Š�F {ˆÑ3Ô3Ð3Ø
Œ×Ò˜&¨ZÐÑ8Ô8Ð8ð9ð 9ð 9ñ 9ô 9ð 9ð 9ð 9ð 9ð 9ð 9øøøð 9ð 9ð 9ð 9õ Ô" :Ñ.Ô.€HÝ	Ô	˜H×2Ò2°9Ñ=Ô=Ñ	>Ô	>ð 	7À"ÝØˆ{ŒOÔ#ØˆzŒNÔ"Øð
ñ 
ô 
ð 	7ð 	7‰JˆD�$õ
 �t‘9”9¥ D¡	¤	Ò)Ð)Ð)Ð)Ý # D¨$°tÐ <Ñ <Ô <ð 7ð 7‘��uØ”{ e¤kÒ1Ð1Ð1Ð1Ý(¨°Ñ6Ô6Ð6Ð6ð7ð	7ð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7ð 	7ð 	7s%   Á%4B%Â%B)Â,B)Ã+BFÆFÆFúbackground-color: #111222)r   ÚfgColorÚrgbÚFF111222Ú00111222)rB   r#   zcolor: #111222)r   r:   rO   zfont-family: Arial;r   ÚnameÚarialzfont-weight: bold;ÚbTzfont-style: italic;Úiztext-decoration: underline;ÚuÚsingleznumber-format: $??,???.00;r   z
$??,???.00ztext-align: left;r   r7   r<   zvertical-align: bottom;r8   r9   zvertical-align: middle;Úcenterzborder-left: 2pt solid red©r   r<   rK   Úmediumzborder-left: 1pt dotted redÚdottedzborder-left: 2pt dotted redÚmediumDashDotDotzborder-left: 1pt dashed redÚdashedzborder-left: 2pt dashed redÚmediumDashedzborder-left: 1pt solid redÚthinzborder-left: 3pt solid redÚthickzborder-left: 2pt solid #111222)r   r<   r:   rU   zborder: 1pt solid red)r   r;   rK   zborder: 1pt solid #111222)r   r;   r:   rU   )r   r=   rK   )r   r=   r:   rU   )r   r9   rK   )r   r9   r:   rU   z1border-left-style: hair; border-left-color: blackÚhairc                 ó„  ‡— dŠt          j        d¦  «        }t          dddœdddœg¦  «        }t          | d¬¦  «        5 }|j                             ˆfd„¦  «        }|                     |dd	¬
¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        | 	                    | ¦  «        ¦  «        5 }|d          
                    dd¦  «        j        j        d	u sJ ‚|d          
                    dd¦  «        j        j        �J ‚|d          
                    dd¦  «        j        j        �J ‚|d          
                    dd¦  «        j        j        j        �J ‚|d          
                    dd¦  «        j        j        j        �J ‚|d          
                    dd¦  «        j        j        j        �J ‚|d          
                    dd¦  «        j        j        j        �J ‚|d          
                    dd¦  «        j        j        j        dk    sJ ‚|d          
                    dd¦  «        j        j        j        dk    sJ ‚|d          
                    dd¦  «        j        j        j        dk    sJ ‚|d          
                    dd¦  «        j        j        j        dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )NrS   r#   r$   r%   )r'   r(   r*   c                 ó   •— ‰S r   © )ÚxÚ	css_styles    €r   ú<lambda>z*test_styler_custom_style.<locals>.<lambda>¤   s   ø€ ¨	€ r   r,   F)r.   ÚindexrW   r&   )r/   r0   r   r   rK   Úmapr1   r2   r3   r4   r5   r   r6   r   r7   r8   r   r9   r:   r;   r<   r=   r   rT   rn   )r   r#   r>   r?   Ústylerr@   rl   s         @r   Útest_styler_custom_stylerq   �   sS  ø€ à+€IÝÔ" :Ñ.Ô.€HÝ	˜! !Ð$Ð$¨A°AÐ&6Ð&6Ð7Ñ	8Ô	8€Bå	�Y zÐ	2Ñ	2Ô	2ð B°fØ”—’Ð1Ð1Ð1Ð1Ñ2Ô2ˆØ�Š˜¨8¸5ˆÑAÔAÐAðBð Bð Bñ Bô Bð Bð Bð Bð Bð Bð Bøøøð Bð Bð Bð Bõ 
Ô	˜H×2Ò2°9Ñ=Ô=Ñ	>Ô	>ð HÀ"à�(Œ|× Ò   AÑ&Ô&Ô+Ô0°EÐ9Ð9Ð9Ð9Ø�(Œ|× Ò   AÑ&Ô&Ô0Ô;ÐCÐCÐCØ�(Œ|× Ò   AÑ&Ô&Ô0Ô9ÐAÐAÐAð �(Œ|× Ò   AÑ&Ô&Ô-Ô4Ô:ÐBÐBÐBØ�(Œ|× Ò   AÑ&Ô&Ô-Ô1Ô7Ð?Ð?Ð?Ø�(Œ|× Ò   AÑ&Ô&Ô-Ô2Ô8Ð@Ð@Ð@Ø�(Œ|× Ò   AÑ&Ô&Ô-Ô3Ô9ÐAÐAÐAð �(Œ|× Ò   AÑ&Ô&Ô+Ô3Ô9¸ZÒGÐGÐGÐGØ�(Œ|× Ò   AÑ&Ô&Ô+Ô3Ô9¸ZÒGÐGÐGÐGØ�(Œ|× Ò   AÑ&Ô&Ô+Ô3Ô9¸ZÒGÐGÐGÐGØ�(Œ|× Ò   AÑ&Ô&Ô+Ô3Ô9¸ZÒGÐGÐGÐGÐGð!Hð Hð Hñ Hô Hð Hð Hð Hð Hð Hð Hð Høøøð Hð Hð Hð Hð Hð Hs%   Á 6BÂBÂ	BÂ4G3J5Ê5J9Ê<J9zcss, attrs, expectedc                 ó†  ‡— t          j        | ¦  «         t          t          j                             d¦  «                             d¦  «        ¦  «        }|j                             ˆfd„¦  «        }t          || ¬¦  «        5 }| 
                    |d¬¦  «         | 
                    |d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «        }t          j        |                     |¦  «        ¦  «        5 }	|	d                              dd¦  «        |	d                              dd¦  «        }}
d d d ¦  «         n# 1 swxY w Y   |D ]#}t          |
|d ¦  «        t          ||¦  «        }}
Œ$t!          |t"          ¦  «        r |
�|
||          k    sJ ‚|||          k    sJ ‚d S |
�|
|k    sJ ‚||k    sJ ‚d S )	Nr%   ©r$   r$   c                 ó   •— ‰S r   rj   ©rk   Úcsss    €r   rm   z,test_styler_to_excel_basic.<locals>.<lambda>¿   ó   ø€  C€ r   r*   rD   r-   Ústyledr#   ©r/   r0   r   rG   rH   rI   rJ   rK   ro   r   r1   r2   r3   r4   r5   ÚgetattrÚ
isinstanceÚdict)r+   rv   ÚattrsÚexpectedr   r>   rp   r?   r#   r@   Úu_cellÚs_cellÚattrs    `           r   Útest_styler_to_excel_basicr‚   º   sY  ø€ õ Ô˜ÑÔÐÝ	•2”9×(Ò(¨Ñ+Ô+×;Ò;¸FÑCÔCÑ	DÔ	D€BØŒX�\Š\˜-˜-˜-˜-Ñ(Ô(€Få	�Y vÐ	.Ñ	.Ô	.ð 5°&Ø
�Š�F {ˆÑ3Ô3Ð3Ø�Š˜¨8ˆÑ4Ô4Ð4ð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5õ Ô" :Ñ.Ô.€HÝ	Ô	˜H×2Ò2°9Ñ=Ô=Ñ	>Ô	>ð MÀ"ð ˜Kœ×-Ò-¨a°Ñ3Ô3°R¸´\×5FÒ5FÀqÈ!Ñ5LÔ5L�ˆðMð Mð Mñ Mô Mð Mð Mð Mð Mð Mð Møøøð Mð Mð Mð Mð ð Lð LˆÝ  ¨¨tÑ4Ô4µg¸fÀdÑ6KÔ6K�ˆˆå�(�DÑ!Ô!ð "Øˆ~ ¨8°FÔ+;Ò!;Ð!;Ð!;Ð;Ø˜ &Ô)Ò)Ð)Ð)Ð)Ð)Ð)àˆ~ ¨8Ò!3Ð!3Ð!3Ð3Ø˜Ò!Ð!Ð!Ð!Ð!Ð!s$   Â/B>Â>CÃCÄ9E	Å	EÅEc                 ón  ‡— t          j        | ¦  «         t          t          j                             d¦  «                             d¦  «        ¦  «        }|j        }|                     ˆfd„d¬¦  «         |                     ˆfd„d¬¦  «         |j        }| 	                    d„ ¦  «         |                     d	„ d¬¦  «         |                     d
„ d¬¦  «         t          || ¬¦  «        5 }|                     |d¬¦  «         |                     |d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «        }	t          j        |	                     |¦  «        ¦  «        5 }
|
d                              dd¦  «        |
d                              dd¦  «        }}|
d                              dd¦  «        |
d                              dd¦  «        }}d d d ¦  «         n# 1 swxY w Y   |D ]D}t!          ||d ¦  «        t!          ||¦  «        }}t!          ||d ¦  «        t!          ||¦  «        }}ŒEt#          |t$          ¦  «        r>|�|||          k    sJ ‚|||          k    sJ ‚|�|||          k    sJ ‚|||          k    sJ ‚d S |�||k    sJ ‚||k    sJ ‚|�||k    sJ ‚||k    sJ ‚d S )Nr%   rs   c                 ó   •— ‰S r   rj   ru   s    €r   rm   z4test_styler_to_excel_basic_indexes.<locals>.<lambda>Ü   ó   ø€ ˜s€ r   r   ©Úaxisc                 ó   •— ‰S r   rj   ru   s    €r   rm   z4test_styler_to_excel_basic_indexes.<locals>.<lambda>Ý   r…   r   r$   c                 ó   — dS ©Nz
null: css;rj   ©rk   s    r   rm   z4test_styler_to_excel_basic_indexes.<locals>.<lambda>à   s   € ˜l€ r   c                 ó   — dS rŠ   rj   r‹   s    r   rm   z4test_styler_to_excel_basic_indexes.<locals>.<lambda>á   ó   €  L€ r   c                 ó   — dS rŠ   rj   r‹   s    r   rm   z4test_styler_to_excel_basic_indexes.<locals>.<lambda>â   r�   r   r*   Únull_styledr-   rx   r#   )r/   r0   r   rG   rH   rI   rJ   rK   Ú	map_indexro   r   r1   r2   r3   r4   r5   rz   r{   r|   )r+   rv   r}   r~   r   r>   rp   Únull_stylerr?   r#   r@   Úui_cellÚsi_cellÚuc_cellÚsc_cellr�   s    `              r   Ú"test_styler_to_excel_basic_indexesr–   Õ   s‡  ø€ õ Ô˜ÑÔÐÝ	•2”9×(Ò(¨Ñ+Ô+×;Ò;¸FÑCÔCÑ	DÔ	D€BàŒX€FØ
×Ò�]�]�]�]¨ÐÑ+Ô+Ð+Ø
×Ò�]�]�]�]¨ÐÑ+Ô+Ð+à”(€KØ‡O‚OÐ*Ð*Ñ+Ô+Ð+Ø×ÒÐ0Ð0°qÐÑ9Ô9Ð9Ø×ÒÐ0Ð0°qÐÑ9Ô9Ð9å	�Y vÐ	.Ñ	.Ô	.ð 5°&Ø×Ò˜V°ÐÑ>Ô>Ð>Ø�Š˜¨8ˆÑ4Ô4Ð4ð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5õ Ô" :Ñ.Ô.€HÝ	Ô	˜H×2Ò2°9Ñ=Ô=Ñ	>Ô	>ð QÀ"ð ˜mÔ,×1Ò1°!°QÑ7Ô7¸¸H¼×9JÒ9JÈ1ÈaÑ9PÔ9P�ˆØ˜mÔ,×1Ò1°!°QÑ7Ô7¸¸H¼×9JÒ9JÈ1ÈaÑ9PÔ9P�ˆð	Qð Qð Qñ Qô Qð Qð Qð Qð Qð Qð Qøøøð Qð Qð Qð Qð
 ð Pð PˆÝ" 7¨D°$Ñ7Ô7½ÀÈ$Ñ9OÔ9O�ˆÝ" 7¨D°$Ñ7Ô7½ÀÈ$Ñ9OÔ9O�ˆˆå�(�DÑ!Ô!ð 	#Øˆ '¨X°fÔ-=Ò"=Ð"=Ð"=Ð=Ø˜( 6Ô*Ò*Ð*Ð*Ð*Øˆ '¨X°fÔ-=Ò"=Ð"=Ð"=Ð=Ø˜( 6Ô*Ò*Ð*Ð*Ð*Ð*Ð*àˆ '¨XÒ"5Ð"5Ð"5Ð5Ø˜(Ò"Ð"Ð"Ð"Øˆ '¨XÒ"5Ð"5Ð"5Ð5Ø˜(Ò"Ð"Ð"Ð"Ð"Ð"s%   Ã./D)Ä)D-Ä0D-Å/A1G,Ç,G0Ç3G0)
rc   ÚmediumDashDotÚ
dashDotDotrg   ra   rb   ÚdoubleÚdashDotÚslantDashDotrd   Úborder_stylec                 óž  ‡— d|› d�Šg d¢}|}t          j        | ¦  «         t          t          j                             d¦  «                             d¦  «        ¦  «        }|j                             ˆfd„¦  «        }t          || ¬¦  «        5 }| 
                    |d¬	¦  «         | 
                    |d
¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «        }t          j        |                     |¦  «        ¦  «        5 }	|	d                              dd¦  «        |	d
                              dd¦  «        }}
d d d ¦  «         n# 1 swxY w Y   |D ]#}t          |
|d ¦  «        t          ||¦  «        }}
Œ$t!          |t"          ¦  «        r |
�|
||          k    sJ ‚|||          k    sJ ‚d S |
�|
|k    sJ ‚||k    sJ ‚d S )Nzborder-left: z black thinr_   r%   rs   c                 ó   •— ‰S r   rj   ru   s    €r   rm   z3test_styler_to_excel_border_style.<locals>.<lambda>  rw   r   r*   rD   r-   rx   r#   ry   )r+   rœ   r   r}   r~   r>   rp   r?   r#   r@   r   r€   r�   rv   s                @r   Ú!test_styler_to_excel_border_stylerŸ     sy  ø€ ð 4˜,Ð
3Ð
3Ð
3€CØ'Ð'Ð'€EØ€Hå
Ô˜ÑÔÐÝ	•2”9×(Ò(¨Ñ+Ô+×;Ò;¸FÑCÔCÑ	DÔ	D€BØŒX�\Š\˜-˜-˜-˜-Ñ(Ô(€Få	�Y vÐ	.Ñ	.Ô	.ð 5°&Ø
�Š�F {ˆÑ3Ô3Ð3Ø�Š˜¨8ˆÑ4Ô4Ð4ð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5õ Ô" :Ñ.Ô.€HÝ	Ô	˜H×2Ò2°9Ñ=Ô=Ñ	>Ô	>ð MÀ"ð ˜Kœ×-Ò-¨a°Ñ3Ô3°R¸´\×5FÒ5FÀqÈ!Ñ5LÔ5L�ˆðMð Mð Mñ Mô Mð Mð Mð Mð Mð Mð Møøøð Mð Mð Mð Mð ð Lð LˆÝ  ¨¨tÑ4Ô4µg¸fÀdÑ6KÔ6K�ˆˆå�(�DÑ!Ô!ð "Øˆ~ ¨8°FÔ+;Ò!;Ð!;Ð!;Ð;Ø˜ &Ô)Ò)Ð)Ð)Ð)Ð)Ð)àˆ~ ¨8Ò!3Ð!3Ð!3Ð3Ø˜Ò!Ð!Ð!Ð!Ð!Ð!s$   Â/C
Ã
CÃCÄ9EÅEÅEc                 ój  — t          j        d¦  «        }d„ }t          t          j                             d¦  «                             d¦  «        ¦  «        }|j                             d„ ¦  «        }t          | d¬¦  «        5 }t          ||¬¦  «                             |d¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        |                     | ¦  «        ¦  «        5 }|d                              dd¦  «        j        j        j        d
k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr#   c                 ó   — ddddiiiS )Nr   r:   rU   Ú111222rj   )rv   s    r   Úcustom_converterz6test_styler_custom_converter.<locals>.custom_converter4  s   € Ø˜ 5¨(Ð"3Ð4Ð5Ð5r   r%   rs   c                 ó   — dS )Nzcolor: #888999rj   r‹   s    r   rm   z.test_styler_custom_converter.<locals>.<lambda>8  s   € Ð$4€ r   r*   )Ústyle_converterr,   r-   rW   )r/   r0   r   rG   rH   rI   rJ   rK   ro   r   r	   Úwriter2   r3   r4   r5   r   r:   rO   )r   r#   r£   r>   rp   r?   r@   s          r   Útest_styler_custom_converterr§   1  sÁ  € ÝÔ" :Ñ.Ô.€Hð6ð 6ð 6õ 
•2”9×(Ò(¨Ñ+Ô+×;Ò;¸FÑCÔCÑ	DÔ	D€BØŒX�\Š\Ð4Ð4Ñ5Ô5€FÝ	�Y zÐ	2Ñ	2Ô	2ð 
°fÝ�vÐ/?Ð@Ñ@Ô@×FÒFØ˜xð 	Gñ 	
ô 	
ð 	
ð
ð 
ð 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
øøøð 
ð 
ð 
ð 
õ
 
Ô	˜H×2Ò2°9Ñ=Ô=Ñ	>Ô	>ð FÀ"Ø�(Œ|× Ò   AÑ&Ô&Ô+Ô1Ô7¸:ÒEÐEÐEÐEÐEðFð Fð Fñ Fô Fð Fð Fð Fð Fð Fð Fð Føøøð Fð Fð Fð Fð Fð Fs$   Â'B6Â6B:Â=B:Ã(2D(Ä(D,Ä/D,c                 ó.  — | j         }t          j        ¦   «         › d�}t          g d¢g d¢dœ¦  «        }|j                             d¬¦  «        }d|› d|› �}|                     ||¬	¦  «         t          |d
|¬¦  «        }t          j	        ||¦  «         d S )Nr   )r$   r%   r&   )r%   é   é   )rk   Úyrn   r†   zs3://ú/)Ústorage_optionsr   )Ú	index_colr­   )
rX   r   r   r   rK   Ú
set_stickyr1   r   ÚtmÚassert_frame_equal)Ús3_bucket_publicÚs3soÚmock_bucket_nameÚtarget_filer>   rp   ÚuriÚresults           r   Útest_styler_to_s3r¸   B  s¯   € ð (Ô,ÐÝ”Z‘\”\Ð(Ð(Ð(€KÝ	˜˜˜¨¨¨Ð3Ð3Ñ	4Ô	4€BØŒX× Ò  gÐ Ñ.Ô.€FØ
2Ð"Ð
2Ð
2 [Ð
2Ð
2€CØ
‡O‚O�C¨€OÑ.Ô.Ð.Ý˜ q¸$Ð?Ñ?Ô?€FÝÔ˜& "Ñ%Ô%Ð%Ð%Ð%r   Úmerge_cells)TFrM   c           
      óL  — t          dddgit          j        t          ddd¬¦  «        dd	ggd
dg¬¦  «        ¬¦  «        }t	          || ¬¦  «        }|                     ¦   «         }|D ]<}|j        dk    r/|j        dk    r$t          |j	        t          ¦  «        s
J d¦   «         ‚Œ=d S )Nr'   r$   r%   z
2006-10-06z
2006-10-07ÚD)ÚstartÚendÚfreqÚXÚYÚdateÚcategory)Únames)rn   )r¹   r   z'Period should be converted to Timestamp)r   r   Úfrom_arraysr   r	   Ú_format_hierarchical_rowsÚrowÚcolr{   Úvalr   )r¹   r>   Ú	formatterÚformatted_cellsr5   s        r   Ú)test_format_hierarchical_rows_periodindexrË   P  sÝ   € õ 
Ø	ˆq�!ˆfˆÝÔ$å <°\ÈÐLÑLÔLØ�c�
ðð ˜:Ð&ð
ñ 
ô 
ð	
ñ 	
ô 	
€Bõ ˜r¨{Ð;Ñ;Ô;€IØ×9Ò9Ñ;Ô;€Oàð ð ˆØŒ8�qŠ=ˆ=˜TœX¨š]˜]Ý˜dœh­	Ñ2Ô2ð ð Ø9ñô Ð2øðð r   ))r2   r   ÚnumpyrG   r/   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsÚtdÚpandasr   r   r   r   r   Úpandas._testingÚ_testingr°   Úpandas.io.excelr   Úpandas.io.formats.excelr	   r0   Úfixturer   r!   rA   ÚmarkÚparametrizerR   Úshared_style_paramsrq   r‚   r–   Úexcel_border_stylesrŸ   r§   Ú
single_cpuÚskip_if_not_us_localer¸   rË   rj   r   r   ú<module>rÝ      s  ðØ Ð Ð Ð Ø €€€à Ð Ð Ð Ø €€€à )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ð )ðð ð ð ð ð ð ð ð ð ð ð ð ð ð Ð Ð Ð Ð Ð à 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2à €Ô �HÑ Ô Ð ð „ðð ñ „ððBð Bð BðBð Bð Bð* „×Ò˜ L°*Ð#=Ñ>Ô>ð7ð 7ñ ?Ô>ð7ð. 	$Ø"Ð"Ð"Ø!¨zÐ:Ð:ðð 	Ø"Ð"Ð"Ø!¨zÐ:Ð:ðð
 ˜V VÐ,¨gÐ6Ø˜F C˜=¨$Ð/Ø˜V S˜M¨4Ð0Ø" V¨S M°8Ð<Ø! OÐ#4°lÐCØ˜;¨Ð5°vÐ>à!Ø	�jÐ!Ø¨Ð2Ð2ðð
  ¨jÐ 9¸8ÐDà!Ð#>Ð#>Ð#>ÀÐIØ"Ð$?Ð$?Ð$?ÀÐJØ"Ð$?Ð$?Ð$?ÐASÐTØ"Ð$?Ð$?Ð$?ÀÐJØ"Ð$?Ð$?Ð$?ÀÐPØ!Ð#>Ð#>Ð#>ÀÐGØ!Ð#>Ð#>Ð#>ÀÐHð 	)Ø*Ð*Ð*Ø!¨zÐ:Ð:ðð
 Ð8Ð8Ð8¸&ÐAà#Ø)Ð)Ð)Ø!¨zÐ:Ð:ðð
 Ð:Ð:Ð:¸FÐCà#Ø+Ð+Ð+Ø!¨zÐ:Ð:ðð
 Ð;Ð;Ð;¸VÐDà#Ø,Ð,Ð,Ø!¨zÐ:Ð:ðð
 Ð9Ð9Ð9¸6ÐBà#Ø*Ð*Ð*Ø!¨zÐ:Ð:ðð 	<Ø#Ð#Ð#Øðð}CÐ ðLHð Hð Hð: „×Ò˜ L°*Ð#=Ñ>Ô>Ø„×ÒÐ/Ð1DÑEÔEð"ð "ñ FÔEñ ?Ô>ð"ð2 „×Ò˜ L°*Ð#=Ñ>Ô>Ø„×ÒÐ/Ð1DÑEÔEð$#ð $#ñ FÔEñ ?Ô>ð$#ðTð ð Ð ð" „×Ò˜ L°*Ð#=Ñ>Ô>Ø„×Ò˜Ð)<Ñ=Ô=ð"ð "ñ >Ô=ñ ?Ô>ð"ð:Fð Fð Fð" „ÔØÔð	&ð 	&ñ Ôñ Ôð	&ð „×Ò˜Ð(@Ð(@Ð(@ÑAÔAðð ñ BÔAðð ð r   