Ë
    u™ãjæ¦ ã                   óŽ	  — d dl Z d dl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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c mZ d dlZd dlmZ d dlmZmZ d dlmZ d dl m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z. ej^                  d„ «       Z0ej^                  d„ «       Z1 G d	„ d
«      Z2ejf                  ji                  dg d¢«      d„ «       Z5ejf                  ji                  dddg«      d„ «       Z6ejf                  ji                  ddg«      d„ «       Z7ejf                  ji                  dg d¢«      d„ «       Z8ejf                  ji                  dddg«      d„ «       Z9d„ Z:ejf                  ji                  dg d¢«      ejf                  ji                  dddg«      ejf                  ji                  dddg«      d„ «       «       «       Z;ejf                  ji                  dddg«      ejf                  ji                  dg d ¢«      d!„ «       «       Z<ejf                  ji                  dg d¢«      d"„ «       Z=d#„ Z>ejf                  ji                  d$d%«      d&„ «       Z?d'„ Z@d(„ ZAd)„ ZBejf                  ji                  d*ddg«      ejf                  ji                  d+ddg«      d,„ «       «       ZCd-„ ZDd.„ ZEd/„ ZFejf                  ji                  dg d¢«      ejf                  ji                  d0ejŽ                  ej�                  ej’                  ej”                  ej–                  ej˜                  ejš                  ejœ                  ejž                  g	«      d1„ «       «       ZPd2„ ZQejf                  ji                  dg d¢«      d3„ «       ZRejf                  ji                  dg d4¢«      d5„ «       ZSejf                  ji                  dg d4¢«      d6„ «       ZTd7„ ZUd8„ ZVd9ZWejf                  ji                  d:d;d<d=gd>d?gfd@dAdBgd>dCgfdDdEdFgd>dGgfdHdIdJgd>dGgfg«      dK„ «       ZXdL„ ZYdM„ ZZejf                  ji                  dNg dO¢«      dP„ «       Z[ejf                  j¹                  dQ«      ejf                  ji                  dRg dS¢«      dT„ «       «       Z]ejf                  ji                  dUg dV¢«      dW„ «       Z^ejf                  ji                  dXg dY¢«      dZ„ «       Z_y)[é    N)Údatetime)ÚOutOfBoundsDatetimeÚPandas4Warning)Ú	DataFrameÚSeries©Úread_csv)ÚCategoricalConversionWarningÚInvalidColumnNameÚPossiblePrecisionLossÚStataMissingValueÚStataReaderÚStataWriterÚStataWriterUTF8ÚValueLabelTypeMismatchÚ_datetime_to_stata_elapsed_vecÚ_new_format_versionsÚ_old_format_versionsÚ#_stata_elapsed_date_to_datetime_vecÚ_version_errorÚ
read_statac                  ó,   — t        g d¢g d¢g d¢dœ«      S )N©é   é   é   é   )ç      ð?ç      @g      ;@g     @T@)ÚAtlantaÚ
BirminghamÚ
CincinnatiÚDetroit©ÚaÚbÚc)r   © ó    úe/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/pandas/tests/io/test_stata.pyÚmixed_framer+   1   s   € äâÚ'ÚCñ	
óð r)   c                 óX   —  | dddd«      }t        |d¬«      }d|j                  _        |S )NÚioÚdataÚstatazstata5_114.dtaT©Úconvert_datesÚindex)r   r2   Úname)ÚdatapathÚ	dta14_114Ú
parsed_114s      r*   r6   r6   <   s3   € á˜˜v wÐ0@ÓA€IÜ˜I°TÔ:€JØ#€J×ÑÔØÐr)   c            
       óF  — e Zd Zd„ Zd„ Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Z	ej                  j                  dg d¢«      d„ «       Z
ej                  j                  dg d¢«      d	„ «       Zd
„ Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Zd„ Zd„ Zej                  j                  dg d¢«      d„ «       Zd„ Zd„ Zej                  j                  dg d¢«      d„ «       Zd„ Zej                  j                  dg d¢«      d„ «       Zd„ Zej                  j                  dg d¢«      ej                  j                  dg d¢«      d „ «       «       Zej                  j                  dg d!¢«      d"„ «       Zej                  j                  dg d¢«      d#„ «       Zej                  j                  dg d¢«      d$„ «       Zd%„ Zej                  j                  dg d¢«      d&„ «       Z d'„ Z!d(„ Z"d)„ Z#d*„ Z$d+„ Z%d,„ Z&d-„ Z'd.„ Z(ej                  j                  dg d¢«      ej                  j                  d/d0d1g«      d2„ «       «       Z)d3„ Z*d4„ Z+d5„ Z,d6„ Z-ej                  j                  dg d7¢«      d8„ «       Z.ej                  j                  dg d9¢«      d:„ «       Z/ej                  j                  dd;d<g«      d=„ «       Z0d>„ Z1d?„ Z2d@„ Z3ej                  j                  dg d¢«      ej                  ji                  dA«      dB„ «       «       Z5dC„ Z6ej                  j                  dg d¢«      dD„ «       Z7ej                  j                  ddEdFg«      dG„ «       Z8ej                  j                  ddHdIg«      dJ„ «       Z9ej                  j                  ddEdFg«      dK„ «       Z:ej                  ji                  dL«      ej                  j                  dg dM¢«      ej                  j                  dNdOdPg«      ej                  j                  dQdRdSg«      ej                  j                  dTdRdSg«      dU„ «       «       «       «       «       Z;e<dVe=dWe=fdX„«       Z>dY„ Z?ej                  ji                  dL«      ej                  j                  dg dZ¢«      ej                  j                  dNdOdPg«      ej                  j                  dQdRdSg«      ej                  j                  dTdRdSg«      d[„ «       «       «       «       «       Z@d\„ ZAej                  j                  dg d¢«      d]„ «       ZBej                  j                  dg d¢«      d^„ «       ZCej                  j                  dd_d`g«      da„ «       ZDdb„ ZEdc„ ZFdd„ ZGde„ ZHdf„ ZIdg„ ZJdh„ ZKdi„ ZLej                  j                  djeMjœ                  eMjœ                   g«      dk„ «       ZOdl„ ZPej                  j                  dmdSdRg«      dn„ «       ZQdo„ ZRej                  j                  dpg dq¢«      dr„ «       ZSej                  j                  d/dsdtg«      du„ «       ZTdv„ ZUdw„ ZVdx„ ZWej                  j                  dg d¢«      dy„ «       ZXdz„ ZYej                  j                  dg d{¢«      d|„ «       ZZd}„ Z[ej                  j                  dg d¢«      d~„ «       Z\ej                  j                  dg d¢«      d„ «       Z]d€„ Z^d�„ Z_ej                  jÀ                  d‚„ «       Zaej                  j                  dg dƒ¢«      ej                  j                  d/dsdtg«      d„„ «       «       Zbd…„ Zcej                  j                  d†d‡ ejÈ                  dˆ eejÌ                  dˆ«      ¬‰«      g«      dŠ„ «       Zgej                  j                  dg d‹¢«      dŒ„ «       Zhej                  j                  dg d9¢«      d�„ «       Ziej                  j                  dd;d<g«      dŽ„ «       Zjy�)�Ú	TestStatac                 ó   — t        |d¬«      S )NTr0   )r   ©ÚselfÚfiles     r*   Úread_dtazTestStata.read_dtaE   s   € ä˜$¨dÔ3Ð3r)   c                 ó   — t        |d¬«      S )NT)Úparse_datesr   r:   s     r*   r	   zTestStata.read_csvI   s   € Ü˜¨$Ô/Ð/r)   Úversion©ér   éu   év   éw   Nc                 óŒ   — t        dg¬«      }|}|j                  |d|¬«       t        |«      }t        j                  ||«       y )NÚunit©ÚcolumnsF©Úwrite_indexr@   ©r   Úto_statar   ÚtmÚassert_frame_equal)r;   r@   Ú	temp_fileÚempty_dsÚpathÚ	empty_ds2s         r*   Útest_read_empty_dtazTestStata.test_read_empty_dtaL   sB   € ä f XÔ.ˆàˆØ×Ñ˜$¨E¸7ÐÔCÜ˜tÓ$ˆ	Ü
×Ñ˜h¨	Õ2r)   c                 ó8  — t        t        j                  dgt        j                  ¬«      t        j                  dgt        j                  ¬«      t        j                  dgt        j
                  ¬«      t        j                  dgt        j                  ¬«      t        j                  dgt        j                  ¬«      t        j                  dgt        j                  ¬«      t        j                  dgt        j                  ¬«      t        j                  dgt        j                  ¬«      t        j                  dgt        j                  ¬«      t        j                  dgt        j                  ¬«      dœ
«      }|}|j                  |d|¬«       t        |«      }|}|d   j                  t        j                  «      |d<   |d   j                  t        j                  «      |d<   |d   j                  t        j
                  «      |d<   |d	   j                  t        j
                  «      |d	<   |d
   j                  t        j
                  «      |d
<   t!        j"                  ||«       t!        j$                  |j&                  |j&                  «       y )Nr   ©Údtype)
Úi8Úi16Úi32Úi64Úu8Úu16Úu32Úu64Úf32Úf64FrJ   r\   r]   r^   r_   r[   )r   ÚnpÚarrayÚint8Úint16Úint32Úint64Úuint8Úuint16Úuint32Úuint64Úfloat32Úfloat64rM   r   ÚastyperN   rO   Úassert_series_equalÚdtypes)r;   r@   rP   Úempty_df_typedrR   Úempty_rereadÚexpecteds          r*   Útest_read_empty_dta_with_dtypesz)TestStata.test_read_empty_dta_with_dtypesU   s¼  € ô
 #ä—h‘h ˜s¬"¯'©'Ô2Ü—x‘x  ¬2¯8©8Ô4Ü—x‘x  ¬2¯8©8Ô4Ü—x‘x  ¬2¯8©8Ô4Ü—h‘h ˜s¬"¯(©(Ô3Ü—x‘x  ¬2¯9©9Ô5Ü—x‘x  ¬2¯9©9Ô5Ü—x‘x  ¬2¯9©9Ô5Ü—x‘x  ¬2¯:©:Ô6Ü—x‘x  ¬2¯:©:Ô6ñó
ˆð ˆØ×Ñ °%ÀÐÔIÜ! $Ó'ˆà!ˆà! $™×.Ñ.¬r¯w©wÓ7ˆ�‰Ø" 5™/×0Ñ0´·±Ó:ˆ�‰Ø" 5™/×0Ñ0´·±Ó:ˆ�‰à" 5™/×0Ñ0´·±Ó:ˆ�‰Ø" 5™/×0Ñ0´·±Ó:ˆ�‰ä
×Ñ˜h¨Ô5Ü
×Ñ˜xŸ™°×0CÑ0CÕDr)   c                 óB  — t        t        d«      g d¢dœ«      }|}|j                  |d|¬«       t        |«      }t	        |j
                  t        j                  «      sJ ‚|}|d   j                  t        j                  «      |d<   t        j                  ||d¬«       y )	Né   )Úb1Úb2Úb3Úb4Úb5©r%   r&   FrJ   r%   T©Úcheck_index_type)r   ÚrangerM   r   Ú
isinstancer2   ÚpdÚ
RangeIndexrn   rb   rf   rN   rO   )r;   r@   rP   ÚdfrR   Úread_dfrs   s          r*   Útest_read_index_col_nonez"TestStata.test_read_index_col_noney   s‚   € äœU 1›XÒ,JÑKÓLˆàˆØ
�‰�D e°WˆÔ=Ü˜TÓ"ˆä˜'Ÿ-™-¬¯©Ô7Ð7Ð7ØˆØ  ™×,Ñ,¬R¯X©XÓ6ˆ�‰Ü
×Ñ˜g xÀ$ÖGr)   )éf   ég   éh   éi   él   én   éo   éq   rB   és   rC   rD   rE   c                 óª  —  |dddd|› d�«      }| j                  |«      }t        t        j                  t        j                  t        j                  t        j                  t        j                  fgg d¢¬«      }|d   j	                  t        j
                  «      |d<   |d	k  r|j                  d
dddddœ¬«      }t        j                  ||«       y )Nr-   r.   r/   Ústata1_ú.dta©Ú
float_missÚdouble_missÚ	byte_missÚint_missÚ	long_missrH   r“   rŠ   Úf_missÚd_missÚb_missÚi_missÚl_miss)	r=   r   rb   Únanrn   rl   ÚrenamerN   rO   )r;   r@   r4   r<   Úparsedrs   s         r*   Útest_read_dta1zTestStata.test_read_dta1†   sÁ   € ñ ˜˜f g°¸¸	ÀÐ/FÓGˆØ—‘˜tÓ$ˆô Ü�f‰f”b—f‘fœbŸf™f¤b§f¡f¬b¯f©fÐ5Ð6ÚWô
ˆð "*¨,Ñ!7×!>Ñ!>¼r¿z¹zÓ!Jˆ�Ñð �cŠ>Ø—‘à"*Ø#+Ø!)Ø (Ø!)ñð 'ó ˆHô 	×Ñ˜f hÕ/r)   c                 ó  — t        j                  t        dddddd«      dt        dd	d«      t        dd	d
«      t        dd	d	«      t        ddd	«      t        dd	d	«      t        dd	d	«      ft        dddddd«      dt        ddd«      t        ddd«      t        dd	d	«      t        ddd	«      t        dd	d	«      t        dd	d	«      ft        j                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                  fgg d¢¬«      }|d   j                  d«      |d<   |d   j                  d«      |d<   |d   j                  d«      |d<   |d   j                  d«      |d<   |d    j                  d«      |d <   |d!   j                  d«      |d!<   |d"   j                  d«      |d"<    |d#d$d%d&«      } |d#d$d%d'«      } |d#d$d%d(«      }d)}t        j                  t        |¬*«      5  | j                  |«      }d d d «       t        j                  t        |¬*«      5  | j                  |«      }d d d «       t        j                  t        |¬*«      5  | j                  |«      }	d d d «       t        j                  |«       t        j                  |«       t        j                  	|«       y # 1 sw Y   Œ¶xY w# 1 sw Y   Œ�xY w# 1 sw Y   ŒdxY w)+NéÖ  é   é   é   é   é   l   *�}aiÚ  r   é   i¶  é   i§  é   é   r   iZléÿi¡  é
   r   iœ  é   i£  )Ú
datetime_cÚdatetime_big_cÚdateÚweekly_dateÚmonthly_dateÚquarterly_dateÚhalf_yearly_dateÚyearly_daterH   r®   úM8[ms]r°   úM8[s]r±   r²   r³   r´   rµ   r-   r.   r/   zstata2_114.dtazstata2_115.dtazstata2_117.dtaz Leaving in Stata Internal Format©Úmatch)r   Úfrom_recordsr   r�   ÚNaTrn   rN   Úassert_produces_warningÚUserWarningr=   rO   )
r;   r4   rs   Úpath1Úpath2Úpath3Úmsgr6   Ú
parsed_115Ú
parsed_117s
             r*   Útest_read_dta2zTestStata.test_read_dta2¦   sÚ  € Ü×)Ñ)ô ˜T 2 r¨2¨r°2Ó6Ø!Ü˜T 1 bÓ)Ü˜T 1 aÓ(Ü˜T 1 aÓ(Ü˜T 1 aÓ(Ü˜T 1 aÓ(Ü˜T 1 aÓ(ð	ô ˜T 2 r¨2¨q°"Ó5ØÜ˜T 2 qÓ)Ü˜T 1 bÓ)Ü˜T 1 aÓ(Ü˜T 1 aÓ(Ü˜T 1 aÓ(Ü˜Q  1Ó%ð	ô —‘œŸ™¤§¡¬¯©´·±¼¿¹ÄÇÁÌÏÉÐPð+ò.	ô1"
ˆðH "*¨,Ñ!7×!>Ñ!>¸xÓ!Hˆ�ÑØ# FÑ+×2Ñ2°7Ó;ˆ�ÑØ"*¨=Ñ"9×"@Ñ"@ÀÓ"Iˆ�ÑØ#+¨NÑ#;×#BÑ#BÀ7Ó#Kˆ�Ñ Ø%-Ð.>Ñ%?×%FÑ%FÀwÓ%OˆÐ!Ñ"Ø'/Ð0BÑ'C×'JÑ'JÈ7Ó'SˆÐ#Ñ$Ø"*¨=Ñ"9×"@Ñ"@ÀÓ"Iˆ�Ñá˜˜v wÐ0@ÓAˆÙ˜˜v wÐ0@ÓAˆÙ˜˜v wÐ0@ÓAˆà0ˆÜ×'Ñ'¬¸3Ô?ñ 	.ØŸ™ uÓ-ˆJ÷	.ä×'Ñ'¬¸3Ô?ñ 	.ØŸ™ uÓ-ˆJ÷	.ä×'Ñ'¬¸3Ô?ñ 	.ØŸ™ uÓ-ˆJ÷	.ô 	×Ñ˜j¨(Ô3Ü
×Ñ˜j¨(Ô3Ü
×Ñ˜j¨(Õ3÷	.ð 	.ú÷	.ð 	.ú÷	.ð 	.ús$   È$K+ÉK7ÊLË+K4Ë7L ÌLr<   )Ú
stata3_113Ú
stata3_114Ú
stata3_115Ú
stata3_117c                 ót  —  |ddd|› d�«      }| j                  |«      }| j                   |dddd«      «      }|j                  t        j                  «      }|d   j                  t        j
                  «      |d<   |d   j                  t        j                  «      |d<   t        j                  ||«       y )Nr-   r.   r/   r‘   ú
stata3.csvÚyearÚquarter)	r=   r	   rn   rb   rl   re   rd   rN   rO   ©r;   r<   r4   rŸ   rs   s        r*   Útest_read_dta3zTestStata.test_read_dta3ã   s¡   € ñ ˜˜f g°$°°t¨}Ó=ˆØ—‘˜tÓ$ˆð —=‘=¡¨$°¸ÀÓ!NÓOˆØ—?‘?¤2§:¡:Ó.ˆØ# FÑ+×2Ñ2´2·8±8Ó<ˆ�ÑØ& yÑ1×8Ñ8¼¿¹ÓAˆ�Ñä
×Ñ˜f hÕ/r)   )r‹   rŒ   r�   rB   rŽ   rC   c                 óÞ  —  |dddd|› d�«      }| j                  |«      }t        j                  g d¢g d¢g d¢g d	¢d
ddt        j                  d
gdd
dt        j                  dgdddt        j                  dgdddt        j                  dgdddt        j                  dgdddt        j                  dgg
g d¢¬«      }|D ]•  }||   j                  «       }t        j                  |d   |j                  «          «      }|dk(  r|}|j                  d«      j                  }	|	j                  |d¬«      }	|	j                  j                  d d¬ «       |	||<   Œ— t        j                  ||«       y )!Nr-   r.   r/   Ústata4_r‘   ©ÚoneÚtenrÒ   rÒ   rÒ   ©ÚtwoÚninerÕ   rÕ   rÕ   ©ÚthreeÚeightrØ   rØ   rØ   ©ÚfourÚsevenr   rÛ   rÛ   ÚfiveÚsixrv   r­   rÜ   rÛ   r©   rÙ   rØ   r¨   rÖ   rÕ   é	   rÓ   rÒ   )Úfully_labeledÚfully_labeled2Úincompletely_labeledÚlabeled_with_missingsÚfloat_labelledrH   rà   râ   ÚcategoryT©Úordered©Úinplace©r=   r   rº   rb   r�   ÚcopyÚasarrayÚnotnarn   Ú_valuesÚset_categoriesÚ
categoriesrž   rN   rO   ©
r;   r@   r4   r<   rŸ   rs   ÚcolÚorigrð   Úcats
             r*   Útest_read_dta4zTestStata.test_read_dta4ò   se  € á˜˜f g°¸¸	ÀÐ/FÓGˆØ—‘˜tÓ$ˆä×)Ñ)â3Ú4Ú=Ú4Ø˜ ¤2§6¡6¨6Ð2Ø˜ ¤2§6¡6¨5Ð1Ø˜& !¤R§V¡V¨WÐ5Ø˜' 1¤b§f¡f¨gÐ6Ø˜ ¤2§6¡6¨6Ð2Ø˜˜u¤b§f¡f¨eÐ4ðòô
ˆð. ò 	 ˆCØ˜C‘=×%Ñ%Ó'ˆDäŸ™ H¨_Ñ$=¸d¿j¹j»lÑ$KÓLˆJØÐ,Ò,Ø!�
à—+‘+˜jÓ)×1Ñ1ˆCØ×$Ñ$ Z¸Ð$Ó>ˆCØ�N‰N×!Ñ! $°Ð!Ô5àˆH�SŠMð	 ô 	×Ñ˜f hÕ/r)   )r†   r‡   rˆ   r‰   rŠ   c                 óÞ  —  |dddd|› d�«      }| j                  |«      }t        j                  g d¢g d¢g d¢g d	¢d
ddt        j                  d
gdd
dt        j                  dgdddt        j                  dgdddt        j                  dgdddt        j                  dgdddt        j                  dgg
g d¢¬«      }|D ]•  }||   j                  «       }t        j                  |d   |j                  «          «      }|dk(  r|}|j                  d«      j                  }	|	j                  |d¬«      }	|	j                  j                  d d¬ «       |	||<   Œ— t        j                  ||«       y )!Nr-   r.   r/   rÐ   r‘   rÑ   rÔ   r×   rÚ   rÝ   rÞ   rv   r­   rÜ   rÛ   r©   rÙ   rØ   r¨   rÖ   rÕ   rß   rÓ   rÒ   )ÚfulllabÚfulllab2ÚincmplabÚmisslabÚfloatlabrH   r÷   rù   rå   Træ   rè   rê   rñ   s
             r*   Útest_readold_dta4zTestStata.test_readold_dta4  sf  € ñ ˜˜f g°¸¸	ÀÐ/FÓGˆØ—‘˜tÓ$ˆä×)Ñ)â3Ú4Ú=Ú4Ø˜ ¤2§6¡6¨6Ð2Ø˜ ¤2§6¡6¨5Ð1Ø˜& !¤R§V¡V¨WÐ5Ø˜' 1¤b§f¡f¨gÐ6Ø˜ ¤2§6¡6¨6Ð2Ø˜˜u¤b§f¡f¨eÐ4ðòô
ˆð. ò 	 ˆCØ˜C‘=×%Ñ%Ó'ˆDäŸ™ H¨YÑ$7¸¿
¹
»Ñ$EÓFˆJØ�jÒ Ø!�
à—+‘+˜jÓ)×1Ñ1ˆCØ×$Ñ$ Z¸Ð$Ó>ˆCØ�N‰N×!Ñ! $°Ð!Ô5àˆH�SŠMð	 ô 	×Ñ˜f hÕ/r)   )Ústata12_117Ústata12_be_117Ústata12_118Ústata12_be_118Ústata12_119Ústata12_be_119c           	      ó²   — | j                   |ddd|› d�«      «      }t        j                  g d¢g d¢g d¢gg d¢¬	«      }t        j                  ||d
¬«       y )Nr-   r.   r/   r‘   )r   ÚabcÚ	abcdefghi)r   ÚcbaÚqwertywertyqwerty)é]   Ú Ústrl)ÚxÚyÚzrH   F©Úcheck_dtype)r=   r   rº   rN   rO   rÍ   s        r*   Útest_read_dta_strlzTestStata.test_read_dta_strlM  sZ   € ð —‘™x¨¨f°gÀ$ÀÀt¸}ÓMÓNˆÜ×)Ñ)â'Ú/Ú ðò
 $ô
ˆô 	×Ñ˜f h¸EÖBr)   )Ústata14_118Ústata14_be_118Ústata14_119Ústata14_be_119c           
      ó¶  — | j                   |ddd|› d�«      «      }|d   j                  d«      |d<   t        j                  g d¢dd	d
t        j
                  t        j
                  t        j
                  t        j
                  gg d¢g d¢g d¢gg d¢¬«      }|d   j                  t        j                  «      |d<   |j                  D ]  }t        j                  ||   ||   «       Œ  t         |ddd|› d�«      «      5 }|j                  «       }ddddddddœ}t        j                  ||«       |j                  dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr-   r.   r/   r‘   ÚBytesÚO)ÚCatÚBogotau   BogotÃ¡r   r   u   option b Ãœnicoder   ÚDogÚBostonu   UzunkÃ¶prÃ¼)ÚPlaneÚRomeu   TromsÃ¸r   ç        úoption ar  )ÚPotatoÚTokyou	   ElÃ¢zÄ±ÄŸéüÿÿÿç      @r   r   )r	  r	  r	  r   gþ¤�ÉTÕ?r  gUUUUUUÕ?)ÚThingsÚCitiesÚUnicode_Cities_StrlÚIntsÚFloatsr  ÚLongsrH   r(  u'   Here are some strls with Ãœnicode charsz	long datazHere are some thingsz	byte datazint datazHere are some citiesz
float data)r&  r)  r$  r  r'  r%  r(  u   This is a  Ãœnicode data label)r=   rn   r   rº   rb   r�   rl   rI   rN   Úassert_almost_equalr   Úvariable_labelsÚassert_dict_equalÚ
data_label)	r;   r<   r4   Ú
parsed_118rs   rò   ÚrdrÚvlÚvl_expecteds	            r*   Útest_read_dta118_119zTestStata.test_read_dta118_119f  sY  € ð —]‘]¡8¨D°&¸'ÀdÀVÈ4À=Ó#QÓRˆ
Ø(¨Ñ1×8Ñ8¸Ó=ˆ
�7ÑÜ×)Ñ)âNØ˜ -´·±¼¿¹ÄÇÁÌÏÉÐPÚEÚ?Ú?ðòô
ˆð$ & hÑ/×6Ñ6´r·z±zÓBˆ�ÑØ×%Ñ%ò 	CˆCÜ×"Ñ" :¨c¡?°H¸S±MÕBð	Cô ™ $¨°¸D¸6À¸ÓGÓHð 	FÈCØ×$Ñ$Ó&ˆBà'PØ$Ø0Ø$Ø"Ø0Ø&ñˆKô × Ñ   [Ô1à—>‘>Ð%EÒEÐEÑE÷	F÷ 	Fñ 	Fús   ÄAEÅEc                 óÒ  — t        t        j                  t        j                  t        j                  t        j                  t        j                  fgg d¢¬«      }d|j                  _        |}|j                  |d ¬«       | j                  |«      }|}|j                  j                  t        j                  «      |_        t        j                  |j                  d«      |«       y )Nr’   rH   r2   r0   )r   rb   r�   r2   r3   rM   r=   rn   rf   rN   rO   Ú	set_index)r;   rP   ÚoriginalrR   Úwritten_and_read_againrs   s         r*   Útest_read_write_dta5zTestStata.test_read_write_dta5—  s¤   € ÜÜ�f‰f”b—f‘fœbŸf™f¤b§f¡f¬b¯f©fÐ5Ð6ÚWô
ˆð &ˆ�‰ÔàˆØ×Ñ˜$¨dÐÔ3Ø!%§¡¨tÓ!4ÐàˆØ!Ÿ™×.Ñ.¬r¯x©xÓ8ˆŒÜ
×ÑÐ4×>Ñ>¸wÓGÈÕRr)   c                 óä  — | j                   |dddd«      «      }d|j                  _        |j                  j                  t        j
                  «      |_        |d   j                  t        j
                  «      |d<   |d   j                  t        j
                  «      |d<   |}|j                  |d ¬«       | j                  |«      }t        j                  |j                  d«      |d	¬
«       y )Nr-   r.   r/   rÊ   r2   rË   rÌ   r0   Fr}   )r	   r2   r3   rn   rb   rf   rM   r=   rN   rO   r4  )r;   r4   rP   r5  rR   r6  s         r*   Útest_write_dta6zTestStata.test_write_dta6¦  sÆ   € Ø—=‘=¡¨$°¸ÀÓ!NÓOˆØ%ˆ�‰ÔØ!Ÿ™×.Ñ.¬r¯x©xÓ8ˆŒØ# FÑ+×2Ñ2´2·8±8Ó<ˆ�ÑØ& yÑ1×8Ñ8¼¿¹ÓBˆ�ÑàˆØ×Ñ˜$¨dÐÔ3Ø!%§¡¨tÓ!4ÐÜ
×ÑØ"×,Ñ,¨WÓ5ØØ"ö	
r)   c           	      óf  — t        ddddt        j                  d«      ggg d¢¬«      }t        |d   t        ¬«      |d<   d	|j
                  _        |j
                  j                  t        j                  «      |_        |d
   j                  t        j                  «      |d
<   |}|j                  |ddi|¬«       | j                  |«      }|j                  «       }|d   j                  d«      |d<   |r|d   j                  d«      |d<   t        j                  |j                  d	«      |«       y )NÚstringÚobjectr   çš™™™™™ñ?ú
2003-12-25)r;  r<  ÚintegerÚfloatingr   ©r.   rI   rV   r2   r?  r   Útc©r1   r@   r¶   Ústr)r   rb   Ú
datetime64r   r<  r2   r3   rn   rf   rM   r=   rë   rN   rO   r4  )r;   r@   rP   Úusing_infer_stringr5  rR   r6  rs   s           r*   Útest_read_write_dta10zTestStata.test_read_write_dta10¶  s  € äØ˜X q¨#¬r¯}©}¸\Ó/JÐKÐLÚKô
ˆô $ H¨XÑ$6¼fÔEˆ�ÑØ%ˆ�‰ÔØ!Ÿ™×.Ñ.¬r¯x©xÓ8ˆŒØ& yÑ1×8Ñ8¼¿¹ÓBˆ�ÑàˆØ×Ñ˜$¨z¸4Ð.@È'ÐÔRØ!%§¡¨tÓ!4Ðà—=‘=“?ˆà'¨
Ñ3×:Ñ:¸8ÓDˆ�ÑÙØ!)¨(Ñ!3×!:Ñ!:¸5Ó!AˆH�XÑä
×ÑØ"×,Ñ,¨WÓ5Øõ	
r)   c                 ó®   — |}t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }|j                  |«       y )Nr   ©r¬   r   ÚABrH   )r   rb   ÚrandomÚdefault_rngÚstandard_normalÚlistrM   )r;   rP   rR   rƒ   s       r*   Útest_stata_doc_examplesz!TestStata.test_stata_doc_examplesÐ  sB   € ØˆÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°WÓ=ÄtÈDÃzô
ˆð 	�‰�DÕr)   c                 ó@  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }t        j                  |j                  ddd…f<   |j                  «       }|}|j                  |d¬«       t        j                  ||«       y )	Nr   )rv   r   ÚabcdrH   r%   r'   F©rK   )r   rb   rK  rL  rM  rN  r�   Úlocrë   rM   rN   rO   )r;   rP   rƒ   Údf_copyrR   s        r*   Útest_write_preserves_originalz'TestStata.test_write_preserves_original×  s}   € ô Ü�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ6Ãlô
ˆô  ŸV™Vˆ�‰ˆq�#�c�'ˆzÑØ—'‘'“)ˆØˆØ
�‰�D eˆÔ,Ü
×Ñ˜b 'Õ*r)   c                 ó0  — t         |dddd«      «      }t         |dddd«      «      }|j                  d   }|j                  d   }||k(  sJ ‚t        |t        «      sJ ‚|}|j	                  |d|¬«       t        |«      }	t        j                  ||	«       y )Nr-   r.   r/   zstata1_encoding.dtar   FrJ   )r   Ú	kreis1849r€   rD  rM   rN   rO   )
r;   r@   r4   rP   ÚrawÚencodedÚresultrs   rR   Úreread_encodeds
             r*   Útest_encodingzTestStata.test_encodingã  s    € ô ™ $¨°Ð9NÓOÓPˆÜ™X d¨F°GÐ=RÓSÓTˆØ×"Ñ" 1Ñ%ˆà—=‘= Ñ#ˆØ˜Ò!Ð!Ð!Ü˜&¤#Ô&Ð&Ð&àˆØ×Ñ˜¨5¸'ÐÔBÜ# DÓ)ˆÜ
×Ñ˜g ~Õ6r)   c                 óþ  — t        dgg d¢¬«      }t        dgg d¢¬«      }d|j                  _        |j                  t        j
                  «      }|}d}t        j                  t        |¬«      5  |j                  |d ¬«       d d d «       | j                  |«      }|}|j                  j                  t        j
                  «      |_        t        j                  |j                  d«      |«       y # 1 sw Y   ŒpxY w)	Nr   )Úgoodu   bÃ¤dÚ8numberÚ%astringwithmorethan32characters______rH   )r^  Úb_dÚ_8numberÚ astringwithmorethan32characters_r2   ú;Not all pandas column names were valid Stata variable namesr¸   r0   ©r   r2   r3   rn   rb   rf   rN   r¼   r   rM   r=   rO   r4  )r;   rP   r5  Ú	formattedrR   rÁ   r6  rs   s           r*   Útest_read_write_dta11zTestStata.test_read_write_dta11ó  sÛ   € ÜØˆNòô
ˆô ØˆNÚSô
ˆ	ð  'ˆ	�‰ÔØ×$Ñ$¤R§X¡XÓ.ˆ	àˆØKˆÜ×'Ñ'Ô(9ÀÔEñ 	8Ø×Ñ˜d°$ÐÔ7÷	8ð "&§¡¨tÓ!4ÐàˆØ!Ÿ™×.Ñ.¬r¯x©xÓ8ˆŒÜ
×ÑÐ4×>Ñ>¸wÓGÈÕR÷	8ð 	8ús   Á0C3Ã3C<c                 ó   — t        dgg d¢¬«      }t        dgg d¢¬«      }d|j                  _        |j                  t        j
                  «      }|}d}t        j                  t        |¬«      5  |j                  |d |¬«       d d d «       | j                  |«      }|}|j                  j                  t        j
                  «      |_        t        j                  |j                  d«      |«       y # 1 sw Y   ŒpxY w)	N©r   r   r   r   rv   r­   )Ú!astringwithmorethan32characters_1Ú!astringwithmorethan32characters_2ú+ú-ÚshortÚdeleterH   )rc  Ú _0astringwithmorethan32characterÚ_Ú_1_Ú_shortÚ_deleter2   rd  r¸   rC  re  )	r;   r@   rP   r5  rf  rR   rÁ   r6  rs   s	            r*   Útest_read_write_dta12zTestStata.test_read_write_dta12  så   € äØÐ òô

ˆô ØÐ òô

ˆ	ð  'ˆ	�‰ÔØ×$Ñ$¤R§X¡XÓ.ˆ	àˆØKˆÜ×'Ñ'Ô(9ÀÔEñ 	IØ×Ñ˜d°$ÀÐÔH÷	Ið "&§¡¨tÓ!4ÐàˆØ!Ÿ™×.Ñ.¬r¯x©xÓ8ˆŒÜ
×ÑÐ4×>Ñ>¸wÓGÈÕR÷	Ið 	Iús   Á0C4Ã4C=c                 ó&  — t        dt        j                  ¬«      }t        dt        j                  ¬«      }t        dt        j                  ¬«      }t        |||dœ«      }d|j                  _        |}|d   j                  t        j                  «      |d<   |}|j                  |«       | j                  |«      }|}	|	j                  j                  t        j                  «      |	_        t        j                  |j                  d«      |	«       y )Ni   rV   i   l        )re   rf   rg   r2   rg   )r   rb   re   rf   rg   r   r2   r3   rn   rm   rM   r=   rN   rO   r4  )
r;   rP   Ús1Ús2Ús3r5  rf  rR   r6  rs   s
             r*   Útest_read_write_dta13zTestStata.test_read_write_dta136  sÏ   € Ü�D¤§¡Ô)ˆÜ�E¤§¡Ô*ˆÜ�E¤§¡Ô*ˆÜ r°BÀÑDÓEˆØ%ˆ�‰Ôàˆ	Ø& wÑ/×6Ñ6´r·z±zÓBˆ	�'ÑàˆØ×Ñ˜$ÔØ!%§¡¨tÓ!4ÐàˆØ!Ÿ™×.Ñ.¬r¯x©xÓ8ˆŒÜ
×ÑÐ4×>Ñ>¸wÓGÈÕRr)   )Ú
stata5_113Ú
stata5_114Ú
stata5_115Ú
stata5_117c                 óL  —  |ddd|› d�«      }| j                  |«      }d|j                  _        t        j                  ||«       |}|j                  |ddi|¬«       | j                  |«      }|j                  «       }	t        j                  |j                  d«      |	«       y )	Nr-   r.   r/   r‘   r2   Údate_tdÚtdrC  )r=   r2   r3   rN   rO   rM   rë   r4  )
r;   r<   r6   r@   r4   rP   rŸ   rR   r6  rs   s
             r*   Útest_read_write_reread_dta14z&TestStata.test_read_write_reread_dta14H  sš   € ñ ˜˜f g°$°°t¨}Ó=ˆØ—‘˜tÓ$ˆØ#ˆ�‰Ôä
×Ñ˜j¨&Ô1àˆØ×Ñ˜D°¸DÐ0AÈ7ÐÔSØ!%§¡¨tÓ!4Ðà—?‘?Ó$ˆÜ
×ÑÐ4×>Ñ>¸wÓGÈÕRr)   )Ú
stata6_113Ú
stata6_114Ú
stata6_115Ú
stata6_117c                 óš  — | j                   |dddd«      «      }|d   j                  t        j                  «      |d<   |d   j                  t        j                  «      |d<   |d   j                  t        j
                  «      |d<   |d   j                  t        j                  «      |d<   |d	   j                  t        j                  «      |d	<   |d
   j                  d«      j                  j                  dd¬«      }|j                  d«      |d
<    |ddd|› d�«      }| j                  |«      }t        j                  ||«       y )Nr-   r.   r/   ú
stata6.csvÚbyte_Úint_Úlong_Úfloat_Údouble_r€  z	Period[D]ÚsÚS)Úhowr·   r‘   )r	   rn   rb   rd   re   rf   rl   rm   rî   ÚasfreqÚviewr=   rN   rO   )r;   r<   r4   rs   ÚarrrŸ   s         r*   Útest_read_write_reread_dta15z&TestStata.test_read_write_reread_dta15\  s'  € ð —=‘=¡¨$°¸ÀÓ!NÓOˆØ$ WÑ-×4Ñ4´R·W±WÓ=ˆ�ÑØ# FÑ+×2Ñ2´2·8±8Ó<ˆ�ÑØ$ WÑ-×4Ñ4´R·X±XÓ>ˆ�ÑØ% hÑ/×6Ñ6´r·z±zÓBˆ�ÑØ& yÑ1×8Ñ8¼¿¹ÓDˆ�Ñð �yÑ!×(Ñ(¨Ó5×=Ñ=×DÑDÀSÈcÐDÓRˆØ!Ÿh™h wÓ/ˆ�Ñá˜˜f g°$°°t¨}Ó=ˆØ—‘˜tÓ$ˆä
×Ñ˜h¨Õ/r)   c                 óø   — t        dgdg¬«      }t        ddddd«      }d	}|}|j                  ||||¬
«       t        |«      5 }|j                  dk(  sJ ‚|j
                  |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)N©r   ÚvariablerH   éÐ  r   é   é   é   zThis is a data file.)Ú
time_stampr-  r@   z29 Feb 2000 14:21)r   r   rM   r   rœ  r-  )r;   r@   rP   r5  rœ  r-  rR   Úreaders           r*   Útest_timestamp_and_labelz"TestStata.test_timestamp_and_labelp  s”   € ä˜d˜V¨j¨\Ô:ˆÜ˜d A r¨2¨rÓ2ˆ
Ø+ˆ
ØˆØ×ÑØ˜Z°JÈð 	ô 	
ô ˜Óð 	3 &Ø×$Ñ$Ð(;Ò;Ð;Ð;Ø×$Ñ$¨
Ò2Ð2Ñ2÷	3÷ 	3ñ 	3ús   Á#A0Á0A9c                 óø   — t        dgdg¬«      }d}|}d}t        j                  t        |¬«      5  |j	                  |||¬«       d d d «       t
        j                  j                  |«      rJ ‚y # 1 sw Y   Œ+xY w)Nr–  r—  rH   z01 Jan 2000, 00:00:00z"time_stamp should be datetime typer¸   )rœ  r@   )r   ÚpytestÚraisesÚ
ValueErrorrM   ÚosrR   Úisfile)r;   r@   rP   r5  rœ  rR   rÁ   s          r*   Útest_invalid_timestampz TestStata.test_invalid_timestamp~  sv   € ä˜d˜V¨j¨\Ô:ˆØ,ˆ
ØˆØ2ˆÜ�]‰]œ:¨SÔ1ñ 	LØ×Ñ˜d¨zÀ7ÐÔK÷	Lä—7‘7—>‘> $Ô'Ð'Ð'Ð'÷	Lð 	Lús   ±A0Á0A9c                 óÚ  — t        t        j                  t        j                  d«      d«      «      }d|j                  _        |}d}t        j                  t        |¬«      5  |j                  |«       d d d «       | j                  |«      }|j                  d«      }t        |j                  «      }d„ }t        ||«      |_        |}t        j                  ||«       y # 1 sw Y   ŒmxY w)Ng      9@)rv   rv   r2   rd  r¸   c                 ó   — t        | d   «      S )Nr   )Úint©r  s    r*   ú<lambda>z5TestStata.test_numeric_column_names.<locals>.<lambda>•  s   € ¤S¨¨1©£Y€ r)   )r   rb   ÚreshapeÚaranger2   r3   rN   r¼   r   rM   r=   r4  rN  rI   ÚmaprO   )	r;   rP   r5  rR   rÁ   r6  rI   Úconvert_col_namers   s	            r*   Útest_numeric_column_namesz#TestStata.test_numeric_column_namesˆ  sÉ   € ÜœRŸZ™Z¬¯	©	°$«¸Ó@ÓAˆØ%ˆ�‰ÔØˆàKˆÜ×'Ñ'Ô(9ÀÔEñ 	$Ø×Ñ˜dÔ#÷	$ð "&§¡¨tÓ!4Ðà!7×!AÑ!AÀ'Ó!JÐÜÐ-×5Ñ5Ó6ˆÙ.ÐÜ),Ð-=¸wÓ)GÐÔ&àˆÜ
×Ñ˜hÐ(>Õ?÷	$ð 	$ús   Á#C!Ã!C*c                 óð  — t        t        j                  d«      t        j                  ¬«      }t        t        j                  d«      t        j                  ¬«      }t        j
                  |d d d…<   t        j
                  |dd d…<   t        ||dœ«      }d|j                  _        |}|j                  ||¬«       | j                  |«      }|j                  d«      }|}t        j                  ||«       y )Nr#  rV   r   r   ©rw  rx  r2   ©r@   )r   rb   r¬  rl   rm   r�   r   r2   r3   rM   r=   r4  rN   rO   )	r;   r@   rP   rw  rx  r5  rR   r6  rs   s	            r*   Útest_nan_to_missing_valuez#TestStata.test_nan_to_missing_value›  s¿   € ä”B—I‘I˜c“N¬"¯*©*Ô5ˆÜ”B—I‘I˜c“N¬"¯*©*Ô5ˆÜ—&‘&ˆ‰3ˆQˆ3‰Ü—6‘6ˆˆ1ˆ4ˆaˆ4‰Ü B¨bÑ1Ó2ˆØ%ˆ�‰ÔàˆØ×Ñ˜$¨ÐÔ0Ø!%§¡¨tÓ!4Ðà!7×!AÑ!AÀ'Ó!JÐØˆÜ
×ÑÐ4°hÕ?r)   c                 ót  — ddg}t        t        j                  t        j                  d«      d«      |¬«      }d|j                  _        |}|j                  |d¬«       | j                  |«      }t        j                  t        |j                  j
                  ¬	«      5  |d    d d d «       y # 1 sw Y   y xY w)
Nr  r  ç      $@)rv   r   rH   Úindex_not_writtenFrR  r¸   )r   rb   r«  r¬  r2   r3   rM   r=   r   r¡  ÚKeyError)r;   rP   rI   r5  rR   r6  s         r*   Útest_no_indexzTestStata.test_no_index¬  s“   € Ø˜�*ˆÜœRŸZ™Z¬¯	©	°$«¸Ó@È'ÔRˆØ1ˆ�‰ÔØˆØ×Ñ˜$¨EÐÔ2Ø!%§¡¨tÓ!4ÐÜ�]‰]œ8¨8¯>©>×+>Ñ+>Ô?ñ 	8Ø"Ð#6Ò7÷	8÷ 	8ñ 	8ús   ÂB.Â.B7c                 ó,  — t        ddg«      }t        ddgt        j                  ¬«      }t        ||dœ«      }d|j                  _        |}|j                  |«       | j                  |«      }|}t        j                  |j                  d«      |«       y )Nr%   zA longer stringr   ç       @rV   r±  r2   )r   rb   rm   r   r2   r3   rM   r=   rN   rO   r4  )r;   rP   rw  rx  r5  rR   r6  rs   s           r*   Útest_string_no_dateszTestStata.test_string_no_dates¶  s„   € Ü�SÐ+Ð,Ó-ˆÜ�S˜#�J¤b§j¡jÔ1ˆÜ B¨bÑ1Ó2ˆØ%ˆ�‰ÔØˆØ×Ñ˜$ÔØ!%§¡¨tÓ!4ÐàˆÜ
×ÑÐ4×>Ñ>¸wÓGÈÕRr)   c                 óê  — t        ddgt        j                  ¬«      }t        ddgt        j                  ¬«      }t        ddgt        j                  ¬«      }t        ddgt        j                  ¬«      }t        ||||dœ«      }d|j                  _        |}t        j                  t        d	¬
«      5  |j                  |«       d d d «       | j                  |«      }|}	t        |	d   t        j                  ¬«      |	d<   t        |	d   t        j                  ¬«      |	d<   t        |	d   t        j                  ¬«      |	d<   t        j                  |j!                  d«      |	«       y # 1 sw Y   Œ¥xY w)Nr   éc   rV   é   iÿ  l   ÿÿÿÿ )Ús0rw  rx  ry  r2   zfrom int64 tor¸   rw  rx  ry  )r   rb   rd   re   rg   r   r2   r3   rN   r¼   r   rM   r=   rf   rm   rO   r4  )
r;   rP   r¿  rw  rx  ry  r5  rR   r6  Úmodifieds
             r*   Útest_large_value_conversionz%TestStata.test_large_value_conversionÂ  s$  € Ü�Q˜�G¤2§7¡7Ô+ˆÜ�Q˜�H¤B§G¡GÔ,ˆÜ�Q˜	�N¬"¯(©(Ô3ˆÜ�Q˜	�N¬"¯(©(Ô3ˆÜ B¨b¸À"ÑEÓFˆØ%ˆ�‰ÔØˆÜ×'Ñ'Ô(=À_ÔUñ 	$Ø×Ñ˜dÔ#÷	$ð "&§¡¨tÓ!4ÐàˆÜ ¨¡´b·h±hÔ?ˆ�‰Ü ¨¡´b·h±hÔ?ˆ�‰Ü ¨¡´b·j±jÔAˆ�‰Ü
×ÑÐ4×>Ñ>¸wÓGÈÕR÷	$ð 	$ús   Â3E)Å)E2c           
      ó  — t        t        dddddd«      g«      }d|j                  _        |}d}t	        j
                  t        |¬	«      5  |j                  |d
di¬«       d d d «       | j                  |«      }|j                  «       }dg|_
        |j                  j                  t        j                  «      |_        |d   j                  d«      |d<   t	        j                  |j                  d«      |«       y # 1 sw Y   Œ�xY w)Nr¢   r£   r¤   r¥   r¦   r§   r2   rd  r¸   r   rB  r0   Ú_0r¶   )r   r   r2   r3   rN   r¼   r   rM   r=   rë   rI   rn   rb   rf   rO   r4  )r;   rP   r5  rR   rÁ   r6  rs   s          r*   Útest_dates_invalid_columnz#TestStata.test_dates_invalid_columnÕ  så   € Üœh t¨R°°R¸¸RÓ@ÐAÓBˆØ%ˆ�‰ÔØˆØKˆÜ×'Ñ'Ô(9ÀÔEñ 	=Ø×Ñ˜d°1°d°)ÐÔ<÷	=ð "&§¡¨tÓ!4Ðà—=‘=“?ˆØ ˜6ˆÔØ!Ÿ™×.Ñ.¬r¯x©xÓ8ˆŒØ! $™×.Ñ.¨xÓ8ˆ�‰Ü
×ÑÐ4×>Ñ>¸wÓGÈÕR÷	=ð 	=ús   ÁC=Ã=Dc                 óà  —  |dddd«      }t        |«      }g d¢g d¢g d¢g}t        |«      }g d¢|_        |d	   j                  t        j
                  «      |d	<   |d
   j                  t        j                  «      |d
<   |d   j                  t        j                  «      |d<   |d   j                  t        j                  «      |d<   t        j                  |j                  d«      |«       y )Nr-   r.   r/   úS4_EDUC1.dta)r   r   r   éþÿÿÿ)r   r   r   rÇ  )r   r   r   rÇ  )ÚclustnumÚpri_schlÚpsch_numÚpsch_disrÈ  rÉ  rÊ  rË  r   )r   r   rI   rn   rb   re   rd   rl   rN   rO   Úhead)r;   r4   Údpathrƒ   Údf0s        r*   Útest_105zTestStata.test_105å  sÂ   € ñ ˜˜v w°Ó?ˆÜ˜ÓˆÚšmª]Ð;ˆÜ˜‹nˆÚFˆŒØ˜j™/×0Ñ0´·±Ó:ˆˆJ‰Ø˜j™/×0Ñ0´·±Ó9ˆˆJ‰Ø˜j™/×0Ñ0´·±Ó9ˆˆJ‰Ø˜j™/×0Ñ0´·±Ó<ˆˆJ‰Ü
×Ñ˜bŸg™g a›j¨#Õ.r)   c                 ó†   —  |dddd«      }t        |«      5 }|j                  «       i k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr-   r.   r/   rÆ  )r   Úvalue_labels)r;   r4   rÍ  r�  s       r*   Útest_value_labels_old_formatz&TestStata.test_value_labels_old_formató  sJ   € ñ
 ˜˜v w°Ó?ˆÜ˜Óð 	/ 6Ø×&Ñ&Ó(¨BÒ.Ð.Ñ.÷	/÷ 	/ñ 	/ús	   —7·A c                 óŽ  — g d¢}|D �ci c]  }||“Œ }}t        dddddd«      gt        |«      z  }t        |g|¬«      }d|j                  _        t        dddddd«      t        ddd«      t        ddd	«      t        ddd
«      t        ddd
«      t        ddd
«      t        dd
d
«      g}t        |gt        j                  dgt        j                  d¬«      |d¬«      }|d   j                  d«      |d<   |}	|j                  |	|¬«       | j                  |	«      }
t        j                  |
j                  d«      |«       y c c}w )N)rB  r�  ÚtwrN   ÚtqÚthÚtyr¢   r£   r§   r¥   r¦   rH   r2   r¤   r   r¬   r©   r   ©rW   r3   r·   )r2   rI   rW   rB  r¶   r0   )r   Úlenr   r2   r3   r�   ÚIndexrb   rf   rn   rM   r=   rN   rO   r4  )r;   rP   rI   r'   Úconversionsr.   r5  Úexpected_valuesrs   rR   r6  s              r*   Útest_date_export_formatsz"TestStata.test_date_export_formatsü  sI  € Ú<ˆØ%,Ö- �q˜!‘tÐ-ˆÐ-Ü˜˜r 2 r¨2¨rÓ2Ð3´c¸'³lÑBˆÜ˜d˜V¨WÔ5ˆØ%ˆ�‰Ôä�T˜2˜r 2 r¨2Ó.Ü�T˜2˜rÓ"Ü�T˜2˜rÓ"Ü�T˜2˜qÓ!Ü�T˜2˜qÓ!Ü�T˜1˜aÓ Ü�T˜1˜aÓ ð
ˆô ØÐÜ—(‘(˜A˜3¤b§h¡h°WÔ=ØØô	
ˆð " $™×.Ñ.¨xÓ8ˆ�‰àˆØ×Ñ˜$¨kÐÔ:Ø!%§¡¨tÓ!4Ðä
×ÑÐ4×>Ñ>¸wÓGÈÕRùò5 .s   ‰
Ec                 ó
  — t        dgd ggdg¬«      }t        dgdggt        j                  dd¬«      dg¬«      }|}|j                  |«       | j	                  |«      }t        j                  |j                  d«      |«       y )	NÚ1ÚfoorH   r	  r   r2   ©r3   ©r2   rI   )r   r�   r‚   rM   r=   rN   rO   r4  )r;   rP   r5  rs   rR   r6  s         r*   Útest_write_missing_stringsz$TestStata.test_write_missing_strings  s€   € Ü˜s˜e d V˜_°u°gÔ>ˆäØˆU�R�DˆMÜ—-‘- ¨Ô0Ø�Gô
ˆð ˆØ×Ñ˜$ÔØ!%§¡¨tÓ!4Ðä
×ÑÐ4×>Ñ>¸wÓGÈÕRr)   Ú	byteorderú>ú<c           
      óÆ  — t        g d¢t        j                  ¬«      }t        g d¢t        j                  ¬«      }t        g d¢t        j                  ¬«      }t        g d¢t        j                  ¬«      }t        g d¢t        j                  ¬«      }t        g d¢t        j
                  ¬«      }	t        g d¢t        j
                  ¬«      }
t        ||||||	|
d	œ«      }d
|j                  _        |}|j                  |||¬«       | j                  |«      }|j                  d
«      }|}t        j                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                  f}t!        |j"                  |d¬«      D ]  \  }}||   j%                  |«      ||<   Œ t'        j(                  ||«       y )N)r   r   TrV   )r   r   éd   )r   r   éÿ   )r   r   iœ  )r   r   iÿÿ  )r   r   iœÿÿ)r   r   l   ÿÿ )r¿  rw  rx  ry  Ús4Ús5Ús6r2   )rä  r@   T©Ústrict)r   rb   Úbool_rh   ri   rj   r   r2   r3   rM   r=   r4  rd   re   rf   rm   ÚziprI   rn   rN   rO   )r;   rä  r@   rP   r¿  rw  rx  ry  rê  rë  rì  r5  rR   r6  rs   Úexpected_typesr'   Úts                     r*   Útest_bool_uintzTestStata.test_bool_uint)  sh  € ô ’L¬¯©Ô1ˆÜ’K¤r§x¡xÔ0ˆÜ’K¤r§x¡xÔ0ˆÜÒ'¬r¯y©yÔ9ˆÜÒ%¬R¯Y©YÔ7ˆÜÒ'¬r¯y©yÔ9ˆÜÒ%¬R¯Y©YÔ7ˆäØ˜R r°¸2ÀRÈrÑRó
ˆð &ˆ�‰ÔàˆØ×Ñ˜$¨)¸WÐÔEØ!%§¡¨tÓ!4Ðà!7×!AÑ!AÀ'Ó!JÐàˆä�G‰GÜ�G‰GÜ�H‰HÜ�H‰HÜ�H‰HÜ�H‰HÜ�J‰Jð
ˆô ˜×(Ñ(¨.ÀÔFò 	0‰DˆAˆqØ" 1™+×,Ñ,¨QÓ/ˆH�QŠKð	0ô 	×ÑÐ4°hÕ?r)   c                 óX  — t         |dddd«      «      5 }|j                  «       }d d d «       t         |dddd«      «      5 }|j                  «       }d d d «       d}d}j                  «       D ]!  \  }}|v sJ ‚|||   k(  sJ ‚||v sJ ‚||v rŒ!J ‚ y # 1 sw Y   ŒoxY w# 1 sw Y   ŒNxY w)Nr-   r.   r/   zstata7_115.dtazstata7_117.dta)Úvar1Úvar2Úvar3)Úlabel1Úlabel2Úlabel3)r   r+  Úitems)	r;   r4   r/  Úsr_115Úsr_117ÚkeysÚlabelsÚkÚvs	            r*   Útest_variable_labelszTestStata.test_variable_labelsN  sË   € Ü™ $¨°Ð9IÓJÓKð 	+ÈsØ×(Ñ(Ó*ˆF÷	+ä™ $¨°Ð9IÓJÓKð 	+ÈsØ×(Ñ(Ó*ˆF÷	+à'ˆØ/ˆØ—L‘L“Nò 	‰DˆAˆqØ˜‘;Ð�;Ø˜˜q™	’>Ð!�>Ø˜‘9Ð�9Ø˜’;Ð�;ñ		÷	+ð 	+ú÷	+ð 	+ús   •BÁB ÂBÂ B)c                 óØ  — d}i }|D ](  }t        d|z  d|z  d|z  g«      |dt        |«      z   <   Œ* t        |«      }|}|j                  |d¬«       t	        |«      5 }|j                  «        t        |j                  |j                  |j                  d¬	«      D ]8  \  }}	}
t        |d
d  «      t        |	d
d «      k(  sJ ‚t        |d
d  «      |
k(  rŒ8J ‚ 	 d d d «       y # 1 sw Y   y xY w)N)r   rè  éô   r%   r&   r'   rŽ  FrR  Trí  r   éÿÿÿÿ)r   rD  r   rM   r   Ú_ensure_openrð  Ú_varlistÚ_fmtlistÚ_typlistr¨  )r;   rP   Ústr_lensrŽ  Ústr_lenr5  rR   Úsrr—  ÚfmtÚtyps              r*   Útest_minimal_size_colzTestStata.test_minimal_size_col[  s  € Ø ˆØˆØò 	ˆGÜ$*Ø�w‘  g¡¨s°W©}Ð=ó%ˆAˆc”C˜“LÑ Ò!ð	ô ˜Q“<ˆØˆØ×Ñ˜$¨EÐÔ2ä˜Óð 	0 "Ø�O‰OÔÜ&)Ø—‘˜RŸ[™[¨"¯+©+¸dô'ò 0Ñ"�˜#˜sô ˜8 A B˜<Ó(¬C°°A°b°	«NÒ:Ð:Ð:Ü˜8 A B˜<Ó(¨CÓ/Ð/Ð/ñ	0÷	0÷ 	0ñ 	0ús   ÁA5C ÃC Ã C)c                 ó  — d}i }|D ](  }t        d|z  d|z  d|z  g«      |dt        |«      z   <   Œ* t        |«      }d}t        j                  t
        |¬«      5  |}|j                  |«       d d d «       y # 1 sw Y   y xY w)N)r   r  éô  r%   r&   r'   rŽ  zÝFixed width strings in Stata \.dta files are limited to 244 \(or fewer\)\ncharacters\.  Column 's500' does not satisfy this restriction\. Use the\n'version=117' parameter to write the newer \(Stata 13 and later\) format\.r¸   )r   rD  r   r   r¡  r¢  rM   )r;   rP   r
  rŽ  r  r5  rÁ   rR   s           r*   Útest_excessively_long_stringz&TestStata.test_excessively_long_stringn  s–   € Ø ˆØˆØò 	ˆGÜ$*Ø�w‘  g¡¨s°W©}Ð=ó%ˆAˆc”C˜“LÑ Ò!ð	ô ˜Q“<ˆð9ð 	ô �]‰]œ:¨SÔ1ñ 	$ØˆDØ×Ñ˜dÔ#÷	$÷ 	$ñ 	$ús   ÁA7Á7B c                 óD  — d}t        dggdg¬«      }|}|j                  |«       t        |«      5 }|j                  }d d d «       t	        d«      D �cg c]  }dt        d|z   «      z   ‘Œ }}|j                  dd«       |D ]?  }	|	   d	   }
t	        d
«      D ]'  }t        |
d	z   |z   «      }|j                  ||   k(  rŒ'J ‚ ŒA t        t        j                  dd«      d   «      }|j                  dk(  sJ ‚t        t        j                  dd«      d   «      }|j                  dk(  sJ ‚t        t        j                  dd«      d   «      }|j                  dk(  sJ ‚t        t        j                  dd«      d   «      }|j                  dk(  sJ ‚y # 1 sw Y   �ŒTxY wc c}w )N)r&   ÚhÚlr  rŒ  rH   é   ú.éa   r   r   é   z<fs      s    Ð z.zz<ds         às        à)r   rM   r   ÚVALID_RANGEr   ÚchrÚinsertr   r;  ÚstructÚunpack)r;   rP   Útypesrƒ   rR   r/  Úvalid_rangeÚirÜ  rò  ÚoffsetÚvals               r*   Útest_missing_value_generatorz&TestStata.test_missing_value_generator€  s£  € ØˆÜ˜˜�w¨¨
Ô3ˆØˆØ
�‰�DÔÜ˜Óð 	* #ØŸ/™/ˆK÷	*ä6;¸B³iÖ@°˜3¤ R¨!¡V£Ó,Ð@ˆÐ@Ø×Ñ˜q #Ô&Øò 	8ˆAØ  ‘^ AÑ&ˆFÜ˜2“Yò 8�Ü'¨°©
°Q©Ó7�Ø—z‘z _°QÑ%7Ó7Ð7Ð7ñ8ð	8ô  ¤§¡¨dÐ4GÓ HÈÑ KÓLˆØ�z‰z˜SÒ Ð Ð Ü¤§¡¨dÐ4GÓ HÈÑ KÓLˆØ�z‰z˜TÒ!Ð!Ð!ô  Ü�M‰M˜$Ð CÓDÀQÑGó
ˆð �z‰z˜SÒ Ð Ð ÜÜ�M‰M˜$Ð CÓDÀQÑGó
ˆð �z‰z˜TÒ!Ð!Ñ!÷1	*ñ 	*üâ@s   ±FÁFÆF)r�   rŽ   rC   c           
      ó†  — g d¢}t        d«      }t        |j                  j                  «       «      }g }t	        d«      D ]=  }t	        d«      D �cg c]  }t        |||dz  z      «      ‘Œ }	}|j                  |	«       Œ? t        ||¬«      }
t         |dddd	|› d
�«      d¬«      }t        j                  ||
«       y c c}w )N©Úint8_Úint16_Úint32_Úfloat32_Úfloat64_ée   r  rv   rH   r-   r.   r/   Ústata8_r‘   T©Úconvert_missing©
r   ÚsortedÚMISSING_VALUESrþ  r   Úappendr   r   rN   rO   )r;   r@   r4   rI   Úsmvrþ  r.   r!  ÚjÚrowrs   rŸ   s               r*   Útest_missing_value_conversionz'TestStata.test_missing_value_conversionŸ  sÂ   € âGˆÜ Ó$ˆÜ�c×(Ñ(×-Ñ-Ó/Ó0ˆØˆÜ�r“ò 	ˆAÜBGÈÃ(ÖK¸QÔ$ T¨!¨q°2©v©,Ñ%7Õ8ÐKˆCÐKØ�K‰K˜Õð	ô ˜T¨7Ô3ˆäÙ�T˜6 7¨g°g°Y¸dÐ,CÓDØ ô
ˆô 	×Ñ˜f hÕ/ùò Ls   ÁB>)rˆ   r‰   rŠ   r‹   rŒ   c           
      ó`  — g d¢}t        d«      }t        |j                  j                  «       «      }g }t	        d«      D �cg c]  }t        ||dz     «      ‘Œ }}|j                  |«       t        ||¬«      }	t         |dddd	|› d
�«      d¬«      }
t        j                  |
|	«       y c c}w )Nr&  r,  rv   r  rH   r-   r.   r/   r-  r‘   Tr.  r0  ©r;   r@   r4   rI   r4  rþ  r.   r5  r6  rs   rŸ   s              r*   Ú$test_missing_value_conversion_compatz.TestStata.test_missing_value_conversion_compat°  s¨   € âGˆÜ Ó$ˆÜ�c×(Ñ(×-Ñ-Ó/Ó0ˆØˆÜ8=¸a»ÖA°1Ô   a¨"¡f¡Õ.ÐAˆÐAØ�‰�CÔÜ˜T¨7Ô3ˆäÙ�T˜6 7¨g°g°Y¸dÐ,CÓDØ ô
ˆô 	×Ñ˜f hÕ/ùò Bs   ÁB+r†   r‡   c           
      óN  — g d¢}t        d«      }t        |j                  j                  «       «      }g }dD �cg c]  }t        ||dz     «      ‘Œ }}|j	                  |«       t        ||¬«      }	t         |dddd	|› d
�«      d¬«      }
t        j                  |
|	«       y c c}w )Nr&  r,  )r   r   r   r   r   r  rH   r-   r.   r/   r-  r‘   Tr.  )	r   r1  r2  rþ  r3  r   r   rN   rO   r9  s              r*   Ú+test_missing_value_conversion_compat_nobytez5TestStata.test_missing_value_conversion_compat_nobyteÁ  s¤   € âGˆÜ Ó$ˆÜ�c×(Ñ(×-Ñ-Ó/Ó0ˆØˆØ8GÖH°1Ô   a¨"¡f¡Õ.ÐHˆÐHØ�‰�CÔÜ˜T¨7Ô3ˆäÙ�T˜6 7¨g°g°Y¸dÐ,CÓDØ ô
ˆô 	×Ñ˜f hÕ/ùò Is   ¹B"c                 ód  — g d¢}g d¢}g d¢}g d¢}g d¢}g d¢}g }	t        ||||||d¬«      D ]�  \  }
}}}}}g }t        d«      D ]e  }|d	k(  r |j                  t        |
|||||«      «       Œ(|d
k(  r|j                  t        |
dd«      «       ŒJ|j                  t        |
||«      «       Œg |	j                  |«       Œ‘ |	j                  t        j
                  gdz  «       g d¢}t        ddd«      |	d   d<   t        ddd«      |	d   d<   t        ddd«      |	d   d<   t        ddd«      |	d   d<   t        ddd«      |	d   d<   t        ddd«      x|	d   d<   |	d   d<   t        ddd«      x|	d   d<   |	d   d
<   t        ddd«      x|	d   d<   x|	d   d<   |	d   d<   t        ddd«      x|	d   d<   |	d   d
<   t        |	|t        ¬«      }	|	d   j                  d«      |	d<   |	d   j                  d«      |	d<   |	d   j                  d«      |	d<   |	d   j                  d«      |	d<   |	d    j                  d«      |	d <   |	d!   j                  d«      |	d!<   |	d"   j                  d«      |	d"<   t         |d#d$d%d&«      «      }t         |d#d$d%d'«      «      }t        j                  |	|«       t        j                  |	|«       |D �ci c]  }||d(d  “Œ
 }}|}d)|	j                  _        d*}|	j                  t        «      }t        j                  t        |¬+«      5  |j!                  ||¬,«       d d d «       | j#                  |«      }t        j                  |j%                  d)«      |	j%                  |	j                  j                  t&        j(                  «      «      «       y c c}w # 1 sw Y   Œ{xY w)-N)i¨  r˜  é'  rè  éÖ  é�  )r   r   rª   r   r   rß   )r   r   r«   r   é   r¥   )r   r   r¥   r   r   r   )r   r   é;   r   r   r   Trí  r©   r   r­   r   )Údate_tcr€  Údate_twÚdate_tmÚdate_tqÚdate_thÚdate_tyr>  rª   é   r   r   r¬   r   rv   r?  é   r@  iŽ  )rI   rW   rC  r¶   r€  r·   rE  rD  rF  rG  rH  r-   r.   r/   zstata9_115.dtazstata9_117.dtarÇ  r2   ú^Converting object-dtype columns of datetimes to datetime64 when writing to stata is deprecatedr¸   r0   )rð  r   r3  r   r�   r»   r   r<  rn   r   rN   rO   r2   r3   r¼   r   rM   r=   r4  rb   rf   )r;   r4   rP   ÚyrÚmoÚddÚhrÚmmÚssrs   rË   ÚmonthÚdayÚhourÚminuteÚsecondr6  r5  rI   rÂ   rÃ   r'   Údate_conversionrR   rÁ   Ú
exp_objectr6  s                              r*   Útest_big_dateszTestStata.test_big_datesÑ  sÝ  € Ú0ˆÚ ˆÚ"ˆÚ ˆÚ ˆÚ ˆØˆÜ69Ø��B˜˜B ¨4ô7
ò 	!Ñ2ˆD�%˜˜d F¨Fð ˆCÜ˜1“Xò ;�Ø˜’6Ø—J‘Jœx¨¨e°S¸$ÀÈÓOÕPØ˜!’VØ—J‘Jœx¨¨a°Ó3Õ4à—J‘Jœx¨¨e°SÓ9Õ:ð;ð �O‰O˜CÕ ð	!ð 	�‰œŸ™˜ 1™Ô%ò
ˆô " $¨¨BÓ/ˆ�‰�A‰Ü! $¨¨AÓ.ˆ�‰�A‰Ü! $¨¨AÓ.ˆ�‰�A‰Ü! $¨¨1Ó-ˆ�‰�A‰Ü! $¨¨2Ó.ˆ�‰�A‰Ü*2°4¸¸AÓ*>Ð>ˆ�‰�A‰˜ !™ Q™Ü*2°4¸¸AÓ*>Ð>ˆ�‰�A‰˜ !™ Q™Ü;CÀDÈ"ÈaÓ;PÐPˆ�‰�A‰ÐP˜ !™ Q™¨(°1©+°a©.Ü*2°4¸¸AÓ*>Ð>ˆ�‰�A‰˜ !™ Q™ä˜X¨w¼fÔEˆØ& yÑ1×8Ñ8¸ÓBˆ�ÑØ& yÑ1×8Ñ8¸ÓAˆ�ÑØ& yÑ1×8Ñ8¸ÓAˆ�ÑØ& yÑ1×8Ñ8¸ÓAˆ�ÑØ& yÑ1×8Ñ8¸ÓAˆ�ÑØ& yÑ1×8Ñ8¸ÓAˆ�ÑØ& yÑ1×8Ñ8¸ÓAˆ�Ñä¡¨¨v°wÐ@PÓ QÓRˆ
Ü¡¨¨v°wÐ@PÓ QÓRˆ
Ü
×Ñ˜h¨
Ô3Ü
×Ñ˜h¨
Ô3à.5Ö6¨˜1˜a  ˜f™9Ð6ˆÐ6àˆØ%ˆ�‰Ôð2ð 	ð —_‘_¤VÓ,ˆ
Ü×'Ñ'¬¸cÔBñ 	EØ×Ñ °OÐÔD÷	Eà!%§¡¨tÓ!4Ðä
×ÑØ"×,Ñ,¨WÓ5Ø×Ñ˜xŸ~™~×4Ñ4´R·X±XÓ>Ó?õ	
ùò 7÷	Eð 	Eús   ËN!ÌN&Î&N/c                 óÎ  — | j                   |dddd«      «      }|d   j                  t        j                  «      |d<   |d   j                  t        j                  «      |d<   |d   j                  t        j
                  «      |d<   |d   j                  t        j                  «      |d<   |d	   j                  t        j                  «      |d	<   |d
   j                  d«      |d
<   t         |dddd«      d¬«      }t        j                  ||«       t         |dddd«      dd¬«      }| j                   |dddd«      «      }|d
   |d
<   t        j                  ||«       y )Nr-   r.   r/   rˆ  r‰  rŠ  r‹  rŒ  r�  r€  r·   ústata6_117.dtaTr0   F)r1   Úpreserve_dtypes)r	   rn   rb   rd   re   rf   rl   rm   r   rN   rO   )r;   r4   rs   Úno_conversionÚ
conversionÚ	expected2s         r*   Útest_dtype_conversionzTestStata.test_dtype_conversion  sQ  € Ø—=‘=¡¨$°¸ÀÓ!NÓOˆØ$ WÑ-×4Ñ4´R·W±WÓ=ˆ�ÑØ# FÑ+×2Ñ2´2·8±8Ó<ˆ�ÑØ$ WÑ-×4Ñ4´R·X±XÓ>ˆ�ÑØ% hÑ/×6Ñ6´r·z±zÓBˆ�ÑØ& yÑ1×8Ñ8¼¿¹ÓDˆ�ÑØ& yÑ1×8Ñ8¸ÓAˆ�Ñä"Ù�T˜6 7Ð,<Ó=ÈTô
ˆô 	×Ñ˜h¨Ô6äÙ�T˜6 7Ð,<Ó=ØØ!ô
ˆ
ð —M‘M¡(¨4°¸À,Ó"OÓPˆ	Ø'¨	Ñ2ˆ	�)Ñä
×Ñ˜i¨Õ4r)   c           	      óü  — | j                   |dddd«      «      }|d   j                  t        j                  «      |d<   |d   j                  t        j                  «      |d<   |d   j                  t        j
                  «      |d<   |d   j                  t        j                  «      |d<   |d	   j                  t        j                  «      |d	<   |d
   j                  t        j                  d¬«      |d
<   g d¢}||   }t         |dddd«      d|¬«      }t        j                  ||«       g d¢}||   }t         |dddd«      d|¬«      }t        j                  ||«       d}t        j                  t         |¬«      5  t         |dddd«      dddg¬«       d d d «       d}t        j                  t         |¬«      5  t         |dddd«      dg d¢¬«       d d d «       y # 1 sw Y   ŒIxY w# 1 sw Y   y xY w)Nr-   r.   r/   rˆ  r‰  rŠ  r‹  rŒ  r�  r€  )z%Y-%m-%d)Úargs)r‰  rŠ  r‹  r[  T)r1   rI   )rŠ  r‹  r‰  z"columns contains duplicate entriesr¸   zEThe following columns were not found in the Stata data set: not_found)r‰  rŠ  r‹  Ú	not_found)r	   rn   rb   rd   re   rf   rl   rm   Úapplyr   Ústrptimer   rN   rO   r   r¡  r¢  )r;   r4   rs   rI   ÚdroppedÚ	reorderedrÁ   s          r*   Útest_drop_columnzTestStata.test_drop_column5  sö  € Ø—=‘=¡¨$°¸ÀÓ!NÓOˆØ$ WÑ-×4Ñ4´R·W±WÓ=ˆ�ÑØ# FÑ+×2Ñ2´2·8±8Ó<ˆ�ÑØ$ WÑ-×4Ñ4´R·X±XÓ>ˆ�ÑØ% hÑ/×6Ñ6´r·z±zÓBˆ�ÑØ& yÑ1×8Ñ8¼¿¹ÓDˆ�ÑØ& yÑ1×7Ñ7Ü×Ñ Mð 8ó 
ˆ�Ñò -ˆØ˜GÑ$ˆÜÙ�T˜6 7Ð,<Ó=ØØô
ˆô 	×Ñ˜h¨Ô0ò -ˆØ˜GÑ$ˆÜÙ�T˜6 7Ð,<Ó=ØØô
ˆ	ô
 	×Ñ˜h¨	Ô2à2ˆÜ�]‰]œ:¨SÔ1ñ 	ÜÙ˜˜v wÐ0@ÓAØ"Ø  'Ð*õ÷	ð VˆÜ�]‰]œ:¨SÔ1ñ 	ÜÙ˜˜v wÐ0@ÓAØ"Ú?õ÷	ð 	÷	ð 	ú÷	ð 	ús   ÆG&ÇG2Ç&G/Ç2G;z;ignore:\nStata value:pandas.io.stata.ValueLabelTypeMismatchc                 ó”  — t        j                  g d¢g d¢g d¢g d¢dddt        j                  ddgdddt        j                  ddgd	d
dt        j                  d	dgdddt        j                  ddgdddt        j                  ddgdddt        j                  ddgg
g d¢¬«      }|}|j	                  d«      j                  ||¬«       | j                  |«      }|j                  d«      }|}|j                  j                  d«      |_        |d   j                  t        «      |d<   |d   j                  t        «      |d<   |D ]l  }||   }	|	j	                  d«      j                  }
|
j                  «       }
|dk(  r|
j                  |	d¬«      }
|
j                  j!                  d d¬«       |
||<   Œn t#        j$                  ||«       y )N)rÒ   rÓ   rÒ   rÒ   rÒ   r   )rÕ   rÖ   rÕ   rÕ   rÕ   r   )rØ   rÙ   rØ   rØ   rØ   r   )rÛ   rÜ   r   rÛ   rÛ   r   rÝ   rÞ   rv   r­   rÜ   rÛ   r©   rÙ   rØ   r¨   rÖ   rÕ   rß   rÓ   rÒ   r¬   )rà   rá   râ   rã   rä   Ú	unlabeledrH   rå   r²  r2   râ   rj  Træ   rè   )r   rº   rb   r�   rn   rM   r=   r4  r2   Ú	set_namesrd  rD  rî   Ú
as_orderedrï   rð   rž   rN   rO   )r;   r@   rP   r5  rR   r6  Úresrs   rò   ró   rô   s              r*   Útest_categorical_writingz"TestStata.test_categorical_writingd  s½  € ô
 ×)Ñ)â6Ú7Ú@Ú7Ø˜ ¤2§6¡6¨6°1Ð5Ø˜ ¤2§6¡6¨5°!Ð4Ø˜& !¤R§V¡V¨W°aÐ8Ø˜' 1¤b§f¡f¨g°qÐ9Ø˜ ¤2§6¡6¨6°1Ð5Ø˜˜u¤b§f¡f¨e°RÐ8ðòô
ˆð, ˆØ�‰˜
Ó#×,Ñ,¨T¸7Ð,ÔCØ!%§¡¨tÓ!4Ðà$×.Ñ.¨wÓ7ˆàˆØ!Ÿ™×1Ñ1°'Ó:ˆŒà+3Ð4JÑ+K×+QÑ+QÔRUÓ+VˆÐ'Ñ(Ø (¨Ñ 5× ;Ñ ;¼CÓ @ˆ�ÑØò 
	 ˆCØ˜C‘=ˆDà—+‘+˜jÓ)×1Ñ1ˆCØ—.‘.Ó"ˆCØ�kÒ!Ø×(Ñ(¨°tÐ(Ó<�à�N‰N×!Ñ! $°Ð!Ô5àˆH�SŠMð
	 ô 	×Ñ˜c 8Õ,r)   c                 óì   — t        j                  dgdgdgdgdggdg¬«      j                  d«      }d	}t        j                  t
        |¬
«      5  |j                  |«       d d d «       y # 1 sw Y   y xY w)Nr%   r&   r'   Údr   ÚToo_longrH   rå   zBdata file created has not lost information due to duplicate labelsr¸   )r   rº   rn   rN   r¼   r   rM   )r;   rP   r5  rÁ   s       r*   Ú$test_categorical_warnings_and_errorsz.TestStata.test_categorical_warnings_and_errors˜  sw   € ä×)Ñ)ØˆU�S�E˜C˜5 3 %¨!¨Ð-¸
°|ô
ç
‰&�Ó
ð 	ð SˆÜ×'Ñ'Ô(>ÀcÔJñ 	)Ø×Ñ˜iÔ(÷	)÷ 	)ñ 	)ús   ÁA*Á*A3c                 ó�  — t        d«      D �cg c]  }dt        |«      z   g‘Œ }}|j                  t        j                  g«       t        j                  |dg¬«      }t        j                  |D �cg c]  }||   j                  d«      ‘Œ c}d¬«      }d|j                  _        |}|j                  ||¬	«       | j                  |«      }|j                  d«      }	|}
|
D ]C  }|
|   j                  }|j!                  «       j"                  }|j%                  |d
¬«      }||
|<   ŒE t'        j(                  |	|
«       y c c}w c c}w )Néx   r%   Úmany_labelsrH   rå   r   )Úaxisr2   r²  Træ   )r   rD  r3  rb   r�   r   rº   r�   Úconcatrn   r2   r3   rM   r=   r4  rî   Úremove_unused_categoriesrð   rï   rN   rO   )r;   r@   rP   r!  Úvaluesr5  rò   rR   r6  rm  rs   rô   Únew_catss                r*   Ú*test_categorical_with_stata_missing_valuesz4TestStata.test_categorical_with_stata_missing_values£  s-  € ä*/°«*Ö5 Q�3œ˜Q›‘<’.Ð5ˆÐ5Ø�‰”r—v‘v�hÔÜ×)Ñ)¨&¸=¸/ÔJˆÜ—9‘9Ø9AÖB°#ˆX�c‰]×!Ñ! *Õ-ÒBÈô
ˆð &ˆ�‰ÔØˆØ×Ñ˜$¨ÐÔ0Ø!%§¡¨tÓ!4Ðà$×.Ñ.¨wÓ7ˆàˆØò 	 ˆCØ˜3‘-×'Ñ'ˆCØ×3Ñ3Ó5×@Ñ@ˆHØ×$Ñ$ X°tÐ$Ó<ˆCØˆH�SŠMð		 ô
 	×Ñ˜c 8Õ,ùò' 6ùò Cs   ŽD>Á1EÚstata10_115Ústata10_117c                 ór  — ddg d¢t        j                  d«      fddg d¢t        j                  d«      d d d…   fddg d¢t        j                  g d¢«      fdd	g d¢t        j                  d
d«      fddg d¢t        j                  g d¢«      fddg d¢t        j                  d«      fddg d¢t        j                  d«      fg}g }|D ]i  \  }}}}|r4|j                  |t        j
                  j                  ||d¬«      f«       Œ>|j                  |t        |t         j                  ¬«      f«       Œk t        j                  t        |«      «      } |ddd|› d�«      }t        |«      }	t        j                  ||	«       |D ]²  }t        ||   j                   t        j"                  «      sŒ+t        j$                  ||   j&                  j(                  |	|   j&                  j(                  «       t        j*                  ||   j&                  j,                  |	|   j&                  j,                  «       Œ´ y )NTrç   ©r%   r&   r'   rp  Úerv   Úreverser  Únoorder)r   r   r   r   r   r@  r   Úfloat_missing)r%   rp  r€  )r   r   r   r  r  FÚnolabel)r   rº  r   r#  g      @Úint32_mixed)rp  r   r€  r&   r%   ræ   rV   r-   r.   r/   r‘   )rb   r¬  rc   r3  r�   ÚCategoricalÚ
from_codesr   rl   r   Ú	from_dictÚdictr   rN   rO   r€   rW   ÚCategoricalDtypero   rô   ÚcodesÚassert_index_equalrð   )
r;   r<   r4   rs   ÚcolsÚis_catrò   rÿ  r‹  rŸ   s
             r*   Útest_categorical_orderz TestStata.test_categorical_orderº  sé  € ð
 �9Ò7¼¿¹À1»ÐFØ�9Ò7¼¿¹À1»ÁdÈÀdÑ9KÐLØ�9Ò7¼¿¹Â/Ó9RÐSØ�:Ò8¼"¿)¹)ÀAÀq»/ÐJØ�?¢O´R·X±XÒ>OÓ5PÐQØ�IÒ8¼"¿)¹)ÀA»,ÐGØ�=Ò"9¼2¿9¹9ÀQ»<ÐHð
ˆð ˆØ*2ò 	EÑ&ˆF�C˜ ÙØ—‘Øœ"Ÿ.™.×3Ñ3°E¸6È4Ð3ÓPÐQõð —‘˜S¤&¨´r·z±zÔ"BÐCÕDð	Eô ×&Ñ&¤t¨D£zÓ2ˆñ ˜˜f g°$°°t¨}Ó=ˆÜ˜DÓ!ˆÜ
×Ñ˜h¨Ô/ð ò 	ˆCÜ˜( 3™-×-Ñ-¬r×/BÑ/BÕCÜ×&Ñ& x°¡}×'8Ñ'8×'>Ñ'>ÀÀsÁÇÁ×@UÑ@UÔVÜ×%Ñ%Ø˜S‘M×%Ñ%×0Ñ0°&¸±+·/±/×2LÑ2Lõñ	r)   Ústata11_115Ústata11_117c           	      ó>  — t         |ddd|› d�«      «      }|j                  dd¬«      }t        j                  t	        |«      «      |_        g d¢}g d	¢}t        j                  j                  ||d
¬«      }t        |d¬«      }t        j                  ||d   «       y )Nr-   r.   r/   r‘   ÚsrhÚfirst)Úna_position)
r  r  r   r   r   r   r   r   r   r   )ÚPoorÚFairÚGoodz	Very goodÚ	ExcellentT)r‹  rð   rç   rá  )r   Úsort_valuesr�   r‚   rÙ  r2   r†  r‡  r   rN   ro   )r;   r<   r4   rŸ   r‹  rð   rô   rs   s           r*   Útest_categorical_sortingz"TestStata.test_categorical_sortingÞ  s–   € ä™H T¨6°7¸t¸fÀD¸MÓJÓKˆð ×#Ñ# E°wÐ#Ó?ˆô —}‘}¤S¨£[Ó1ˆŒÚ0ˆÚGˆ
Ü�n‰n×'Ñ'Ø J¸ð (ó 
ˆô ˜# EÔ*ˆÜ
×Ñ˜x¨°©Õ7r)   c                 ó  —  |ddd|› d�«      }t        |«      }t        |d¬«      }|D ]`  }t        ||   j                  t        j                  «      sŒ+||   j
                  j                  sJ ‚||   j
                  j                  sŒ`J ‚ y )Nr-   r.   r/   r‘   F)Úorder_categoricals)r   r€   rW   r�   rŠ  rô   rç   )r;   r<   r4   rŸ   Úparsed_unorderedrò   s         r*   Útest_categorical_orderingz#TestStata.test_categorical_orderingï  sŒ   € á˜˜f g°$°°t¨}Ó=ˆÜ˜DÓ!ˆä% d¸uÔEÐØò 	9ˆCÜ˜f S™k×/Ñ/´×1DÑ1DÔEØØ˜#‘;—?‘?×*Ò*Ð*Ð*Ø'¨Ñ,×0Ñ0×8Ó8Ð8Ð8ñ		9r)   zignore::UserWarning)Ú
stata1_117Ú
stata2_117rÈ   Ú
stata4_117r~  r†  Ú
stata7_117Ú
stata8_117Ú
stata9_117r}  r‘  Ú	chunksizer   r   Úconvert_categoricalsFTr1   c                 ó”  —  |ddd|› d�«      }t        |||¬«      }t        |d||¬«      5 }d}	t        d	«      D ]h  }
	 |j                  |«      }|j                  |	|	|z   …d d …f   j                  «       }| j                  |«      }t        j                  ||d
¬«       |	|z  }	Œj d d d «       y # t        $ r Y  Œw xY w# 1 sw Y   y xY w)Nr-   r.   r/   r‘   ©r§  r1   T)Úiteratorr§  r1   r   rv   Fr  ©	r   r   ÚreadÚStopIterationÚilocrë   Ú_convert_categoricalrN   rO   ©r;   r<   r¦  r§  r1   r4   ÚfnamerŸ   ÚitrÚposr5  ÚchunkÚ
from_frames                r*   Útest_read_chunks_117zTestStata.test_read_chunks_117û  sû   € ñ. ˜˜v w°4°&¸°Ó>ˆäØØ!5Ø'ô
ˆô
 ØØØ!5Ø'ô	
ð 	!ð
 ØˆCÜ˜1“Xò !�ðØŸH™H YÓ/�Eð $Ÿ[™[¨¨s°Y©Ð)>ÂÐ)AÑB×GÑGÓI�
Ø!×6Ñ6°zÓB�
Ü×%Ñ%ØØØ %õð
 �yÑ ‘ð!÷	!ð 	!øô %ò Úðú÷	!ð 	!úó/   ¬B>¾B.ÁAB>Â.	B;Â7B>Â:B;Â;B>Â>Crµ  Úreturnc                 ó4  — | D �]  }| |   }t        |j                  t        j                  «      sŒ.|j                  j                  «       }|j                  j                  t        k(  rGt        j                  j                  |j                  j                  d¬«      }|j                  |«      }na|j                  j                  dk(  rHt        |j                  «      dk(  r0|j                  j                  t        «      }|j                  |«      }|| |<   �Œ | S )zX
        Emulate the categorical casting behavior we expect from roundtripping.
        F)rë   r;  r   )r€   rW   r�   rŠ  rî   rx  rð   r<  rÚ  Ú_with_inferrï   rÙ  rn   )rµ  rò   Úserrô   rð   s        r*   r¯  zTestStata._convert_categorical.  sæ   € ð
 ó 	&ˆCØ˜S‘/ˆCÜ˜#Ÿ)™)¤R×%8Ñ%8Õ9Ø—k‘k×:Ñ:Ó<�Ø—>‘>×'Ñ'¬6Ò1Ü!#§¡×!5Ñ!5ØŸ™×.Ñ.°Uð "6ó "�Jð ×,Ñ,¨ZÓ8‘CØ—^‘^×)Ñ)¨XÒ5¼#¸c¿n¹nÓ:MÐQRÒ:Rà!$§¡×!6Ñ!6´vÓ!>�JØ×,Ñ,¨ZÓ8�CØ"%�
˜3“ð	&ð Ðr)   c                 ó.  —  |dddd«      }t        |«      }|j                  dd…d d …f   }t        |d¬«      5 }|j                  d«      }t        j                  ||«       d d d «       t        |d¬	«      5 }t        |«      }t        j                  ||«       d d d «       t        |d¬«      5 }|j                  d«      }t        j                  ||«       d d d «       t        |d¬	«      5 }|j                  «       }t        j                  ||«       d d d «       t        |d
¬	«      5 }t        j                  |«      }d d d «       t        j                  |«       y # 1 sw Y   ŒûxY w# 1 sw Y   ŒÐxY w# 1 sw Y   ŒŸxY w# 1 sw Y   ŒoxY w# 1 sw Y   ŒPxY w)Nr-   r.   r/   zstata12_117.dtar   rv   T©rª  ©r¦  r   )	r   r®  r¬  rN   rO   ÚnextÚ	get_chunkr�   rw  )r;   r4   r±  rŸ   rs   r²  r´  Úfrom_chunkss           r*   Útest_iteratorzTestStata.test_iteratorC  sl  € Ù˜˜v wÐ0AÓBˆä˜EÓ"ˆØ—;‘;˜q ˜s¢A˜vÑ&ˆä˜¨Ô-ð 	3°Ø—H‘H˜Q“KˆEÜ×!Ñ! (¨EÔ2÷	3ô ˜¨Ô+ð 	3¨sÜ˜“IˆEÜ×!Ñ! (¨EÔ2÷	3ô ˜¨Ô-ð 	3°Ø—M‘M !Ó$ˆEÜ×!Ñ! (¨EÔ2÷	3ô ˜¨Ô+ð 	3¨sØ—M‘M“OˆEÜ×!Ñ! (¨EÔ2÷	3ô
 ˜¨Ô+ð 	)¨sÜŸ)™) C›.ˆK÷	)ä
×Ñ˜f kÕ2÷'	3ð 	3ú÷	3ð 	3ú÷	3ð 	3ú÷	3ð 	3ú÷
	)ð 	)ús;   ¹(EÁ6"E'Â-(E3Ã*'E?Ä&FÅE$Å'E0Å3E<Å?FÆF)
Ú
stata2_115rÇ   Ú
stata4_115r}  r…  Ú
stata7_115Ú
stata8_115Ú
stata9_115r|  r�  c                 ó”  —  |ddd|› d�«      }t        |||¬«      }t        |d||¬«      5 }d}	t        d	«      D ]h  }
	 |j                  |«      }|j                  |	|	|z   …d d …f   j                  «       }| j                  |«      }t        j                  ||d
¬«       |	|z  }	Œj d d d «       y # t        $ r Y  Œw xY w# 1 sw Y   y xY w)Nr-   r.   r/   r‘   r©  T)rª  r1   r§  r   rv   Fr  r«  r°  s                r*   Útest_read_chunks_115zTestStata.test_read_chunks_115^  sý   € ñ, ˜˜v w°4°&¸°Ó>ˆô ØØ!5Ø'ô
ˆô ØØØ'Ø!5ô	
ð 	!ð
 ØˆCÜ˜1“Xò !�ðØŸH™H YÓ/�Eð $Ÿ[™[¨¨s°Y©Ð)>ÂÐ)AÑB×GÑGÓI�
Ø!×6Ñ6°zÓB�
Ü×%Ñ%ØØØ %õð
 �yÑ ‘ð!÷	!ð 	!øô %ò Úðú÷	!ð 	!úr·  c                 ó@  —  |dddd«      }g d¢}d}t        ||¬«      }t        |d¬	«      5 }d
}t        d«      D ]N  }|j                  ||¬«      }	|	€ n7|j                  |||z   …d d …f   }
t	        j
                  |
|	d¬«       ||z  }ŒP d d d «       y # 1 sw Y   y xY w)Nr-   r.   r/   zstata3_117.dta)rÌ   ÚcpiÚm1r   rH   Tr½  r   rv   Fr  )r   r   r¬  r®  rN   rO   )r;   r4   r±  rI   r¦  rŸ   r²  r³  r5  r´  rµ  s              r*   Útest_read_chunks_columnsz"TestStata.test_read_chunks_columns“  s´   € Ù˜˜v wÐ0@ÓAˆÚ*ˆØˆ	ä˜E¨7Ô3ˆÜ˜¨Ô-ð 	!°ØˆCÜ˜1“Xò !�ØŸ™ °G˜Ó<�Ø�=ÙØ#Ÿ[™[¨¨s°Y©Ð)>ÂÐ)AÑB�
Ü×%Ñ% j°%ÀUÕKØ�yÑ ‘ð!÷	!÷ 	!ñ 	!ús   ¬ABÂBc                 ó~  — d|j                   _        ddddœ}|}|j                  |||¬«       t        |«      5 }|j	                  «       }d d d «       dddddœ}|k(  sJ ‚d	|d<   |}|j                  |||¬«       t        |«      5 }|j	                  «       }d d d «       ||k(  sJ ‚y # 1 sw Y   Œ^xY w# 1 sw Y   ŒxY w)
Nr2   ú	City RankúCity ExponentÚCityr$   ©r+  r@   r	  )r2   r%   r&   r'   z	The Index)r2   r3   rM   r   r+  )	r;   r@   r+   rP   r+  rR   r  Úread_labelsÚexpected_labelss	            r*   Útest_write_variable_labelsz$TestStata.test_write_variable_labels£  sé   € ð ")ˆ×ÑÔØ +°/ÈÑOˆØˆØ×Ñ˜T°?ÈGÐÔTÜ˜Óð 	/ "Ø×,Ñ,Ó.ˆK÷	/ð ØØ Øñ	
ˆð ˜oÒ-Ð-Ð-à#.ˆ˜Ñ ØˆØ×Ñ˜T°?ÈGÐÔTÜ˜Óð 	/ "Ø×,Ñ,Ó.ˆK÷	/à˜oÒ-Ð-Ñ-÷	/ð 	/ú÷	/ð 	/ús   ¹B'ÂB3Â'B0Â3B<c                 óÂ   — d|j                   _        ddddœ}|}d}t        j                  t        |¬«      5  |j                  |||¬«       d d d «       y # 1 sw Y   y xY w)	Nr2   úZvery longvery longvery longvery longvery longvery longvery longvery longvery longvery longrÐ  rÑ  r$   ú.Variable labels must be 80 characters or fewerr¸   rÒ  ©r2   r3   r   r¡  r¢  rM   )r;   r@   r+   rP   r+  rR   rÁ   s          r*   Útest_invalid_variable_labelsz&TestStata.test_invalid_variable_labels»  sc   € à!(ˆ×ÑÔØ 0°ÈVÑTˆØˆØ>ˆÜ�]‰]œ:¨SÔ1ñ 	YØ× Ñ  °ÐPWÐ ÔX÷	Y÷ 	Yñ 	Yús   ·AÁArB   rC   c                 óÈ   — d|j                   _        ddddœ}d|d<   |}t        j                  t        d¬	«      5  |j                  |||¬
«       d d d «       y # 1 sw Y   y xY w)Nr2   r×  rÐ  rÑ  r$   u   invalid character Å’r%   z,Variable labels must contain only charactersr¸   rÒ  rÙ  )r;   r@   r+   rP   r+  rR   s         r*   Ú$test_invalid_variable_label_encodingz.TestStata.test_invalid_variable_label_encodingÄ  sn   € à!(ˆ×ÑÔØ 0°ÈVÑTˆØ5ˆ˜ÑØˆÜ�]‰]ÜÐLô
ñ 	Yð × Ñ  °ÐPWÐ ÔX÷	Y÷ 	Yñ 	Yús   ºAÁA!c                 ó^  — g d¢}dddj                  |«      dœ}d}t        j                  t        |¬«      5  |}|j	                  ||¬«       d d d «       ddd	dœ}d
}t        j                  t        |¬«      5  |}|j	                  ||¬«       d d d «       y # 1 sw Y   ŒKxY w# 1 sw Y   y xY w)N)u   Î¡õ   Î‘u   Î�u   Î”rÞ  u   Î£rÏ  rÐ  r	  r$   zKVariable labels must contain only characters that can be encoded in Latin-1r¸   )r+  zqA very, very, very long variable label that is too long for Stata which means that it has more than 80 charactersrØ  )Újoinr   r¡  r¢  rM   )r;   r+   rP   ry  Úvariable_labels_utf8rÁ   rR   Úvariable_labels_longs           r*   Ú test_write_variable_label_errorsz*TestStata.test_write_variable_label_errorsÏ  sÐ   € ÚMˆð Ø Ø—‘˜“ñ 
Ðð!ð 	ô �]‰]œ:¨SÔ1ñ 	MØˆDØ× Ñ  Ð7KÐ ÔL÷	Mð
 Ø ð2ñ 
Ðð ?ˆÜ�]‰]œ:¨SÔ1ñ 	MØˆDØ× Ñ  Ð7KÐ ÔL÷	Mð 	M÷	Mð 	Mú÷	Mð 	Mús   ·BÁ8B#ÂB Â#B,c                 ó¨  — t        j                  ddddddd«      t        j                  ddddddd«      t        j                  dd	d
d	d
d	d«      g}t        g d¢g d¢|dœ«      }|d d  }|d   j                  d«      |d<   |}|j	                  |d¬«       t        |d¬«      }t        j                  ||«       |j	                  |dddi¬«       t        |d¬«      }t        j                  ||«       |j                  j                  «       j                  d«      }|j	                  |d|di¬«       t        |d¬«      }t        j                  ||«       y )NéÏ  rª   r«   éà.  éÜ  r›  éR  éð  r©   r   é   ©r   rº  r   ©ÚappleÚbananaÚcherry©ÚnumsÚstrsÚdatesrò  r¶   FrR  Tr0   rB  )rK   r1   )Údtr   r   rn   rM   r   rN   rO   rI   Útolistr2   )	r;   rP   rò  r5  rs   rR   ÚrereadÚdirectÚ	dates_idxs	            r*   Útest_default_date_conversionz&TestStata.test_default_date_conversioní  sP  € ô �K‰K˜˜b " b¨"¨b°%Ó8Ü�K‰K˜˜b " b¨"¨b°%Ó8Ü�K‰K˜˜a  A q¨!¨TÓ2ð
ˆô
 â'Ú5Øñó
ˆð ™A�;ˆà$ WÑ-×4Ñ4°XÓ>ˆ�ÑàˆØ×Ñ˜$¨EÐÔ2Ü˜D°Ô5ˆÜ
×Ñ˜h¨Ô/à×Ñ˜$¨EÀ'È4ÀÐÔQÜ˜D°Ô5ˆÜ
×Ñ˜f fÔ-à×$Ñ$×+Ñ+Ó-×3Ñ3°GÓ<ˆ	Ø×Ñ˜$¨EÀ)ÈTÐARÐÔSÜ˜D°Ô5ˆÜ
×Ñ˜f fÕ-r)   c                 ó¬   — t        dddgi«      }d}t        j                  t        |¬«      5  |}|j	                  |«       d d d «       y # 1 sw Y   y xY w)Nr%   y      ð?       @y       @      @z"Data type complex128 not supportedr¸   )r   r   r¡  ÚNotImplementedErrorrM   )r;   rP   r5  rÁ   rR   s        r*   Útest_unsupported_typezTestStata.test_unsupported_type  sR   € Ü˜c F¨FÐ#3Ð4Ó5ˆà2ˆÜ�]‰]Ô.°cÔ:ñ 	$ØˆDØ×Ñ˜dÔ#÷	$÷ 	$ñ 	$ús   ­A
Á
Ac                 ó8  — t        j                  ddddddd«      t        j                  ddddddd«      t        j                  dd	d
d	d
d	d«      g}t        g d¢g d¢|dœ«      }d}t        j                  t
        |¬«      5  |}|j                  |ddi¬«       d d d «       t        j                  ddd¬«      }t        g d¢g d¢|dœ«      }t        j                  t
        d¬«      5  |}|j                  |«       d d d «       y # 1 sw Y   ŒlxY w# 1 sw Y   y xY w)Nrä  rª   r«   rå  ræ  r›  rç  rè  r©   r   ré  rê  rë  rï  zFormat %tC not implementedr¸   rò  ÚtCr0   z1-1-1990r   zAsia/Hong_Kong)ÚperiodsÚtzzData type datetime64)	ró  r   r   r   r¡  rú  rM   r�   Ú
date_range)r;   rP   rò  r5  rÁ   rR   s         r*   Útest_unsupported_datetypez#TestStata.test_unsupported_datetype  s"  € ä�K‰K˜˜b " b¨"¨b°%Ó8Ü�K‰K˜˜b " b¨"¨b°%Ó8Ü�K‰K˜˜a  A q¨!¨TÓ2ð
ˆô
 â'Ú5Øñó
ˆð +ˆÜ�]‰]Ô.°cÔ:ñ 	CØˆDØ×Ñ˜d°7¸D°/ÐÔB÷	Cô —‘˜j°!Ð8HÔIˆÜâ'Ú5Øñó
ˆô �]‰]Ô.Ð6LÔMñ 	$ØˆDØ×Ñ˜dÔ#÷	$ð 	$÷	Cð 	Cú÷	$ð 	$ús   ÂDÃ'DÄDÄDc           	      óÆ   — d}d|› d�}t        j                  t        t        j                  |«      ¬«      5  t         |dddd«      d	¬
«       d d d «       y # 1 sw Y   y xY w)NzV--------------------------------------------------------------------------------
wolofa{  
Value labels for column ethnicsn are not unique. These cannot be converted to
pandas categoricals.

Either read the file with `convert_categoricals` set to False or use the
low level interface in `StataReader` to separately read the values and the
value_labels. This column's labels are stored under the key 'ETHNICSN' in
`StataReader.value_labels()`.

The repeated labels are:
ú
r¸   r-   r.   r/   zstata15.dtaT©r§  )r   r¡  r¢  ÚreÚescaper   )r;   r4   ÚrepeatsrÁ   s       r*   Útest_repeated_column_labelsz%TestStata.test_repeated_column_labels5  se   € à&ˆð
ð 	€	ð 
ðˆô �]‰]œ:¬R¯Y©Y°s«^Ô<ñ 	ÜÙ˜˜v w°Ó>Ø%)õ÷	÷ 	ñ 	ús   ·AÁA c                 ó  — t         |dddd«      «      }t        dddddddt        j                  ddg
ddddt        j                  d	dd
ddg
dt        j                  d
dd	d	ddddg
g d¢dœ«      }|g d¢   }t	        j
                  ||«       y )Nr-   r.   r/   zstata7_111.dtar   r   r   r   r   rv   r­   )
r%   r&   r'   rp  r€  r	  Úgr  r!  r5  )r  r  Úwr  )r   r   rb   r�   rN   rO   )r;   r4   rƒ   r5  s       r*   Útest_stata_111zTestStata.test_stata_111J  s�   € ô ™  v¨wÐ8HÓIÓJˆÜà˜˜A˜q ! Q¨¬2¯6©6°1°aÐ8Ø˜˜A˜q¤"§&¡&¨!¨Q°°1°aÐ8ØœŸ™  A q¨!¨Q°°1°aÐ8ÚFñ	ó
ˆð Ò0Ñ1ˆÜ
×Ñ˜h¨Õ+r)   c                 ó¸  — t        dt        j                  t        j                  «      j                  dgdt        j                  t        j                  «      j                  t        j                  t        j                  «      j
                  gdœ«      }d}t        j                  t        |¬«      5  |}|j                  |«       d d d «       y # 1 sw Y   y xY w)Nr  g      Ð©ÚColumnOkÚColumnTooBigzZColumn ColumnTooBig has a maximum value \(.+\) outside the range supported by Stata \(.+\)r¸   )
r   rb   ÚfinfoÚdoubleÚepsÚmaxr   r¡  r¢  rM   )r;   rP   rƒ   rÁ   rR   s        r*   Útest_out_of_range_doublez"TestStata.test_out_of_range_doubleZ  sŸ   € äà ¤"§(¡(¬2¯9©9Ó"5×"9Ñ"9Ð;OÐPØ!$¤b§h¡h¬r¯y©yÓ&9×&=Ñ&=¼r¿x¹xÌÏ	É	Ó?R×?VÑ?VÐ Wñó
ˆð)ð 	ô �]‰]œ:¨SÔ1ñ 	ØˆDØ�K‰K˜Ô÷	÷ 	ñ 	ús   Â3CÃCc                 óØ  — t        dt        j                  t        j                  «      j                  t        j                  t        j                  «      j
                  dz  gdt        j                  t        j                  «      j                  t        j                  t        j                  «      j
                  gdœ«      }d|j                  _        |D ]'  }||   j                  t        j                  «      ||<   Œ) |}|j                  |«       t        |«      }|d   j                  t        j                  «      |d<   |}t        j                  |j                  d«      |«       y )Nr  rµ  r  r2   r  )r   rb   r  rl   r  r  r2   r3   rn   rM   r   rm   rN   rO   r4  )r;   rP   r5  rò   rR   rõ  rs   s          r*   Útest_out_of_range_floatz!TestStata.test_out_of_range_floatj  s  € Üð Ü—H‘HœRŸZ™ZÓ(×,Ñ,Ü—H‘HœRŸZ™ZÓ(×,Ñ,¨tÑ3ðð Ü—H‘HœRŸZ™ZÓ(×,Ñ,Ü—H‘HœRŸZ™ZÓ(×,Ñ,ð!ñó
ˆð &ˆ�‰ÔØò 	=ˆCØ$ S™M×0Ñ0´·±Ó<ˆH�SŠMð	=ð ˆØ×Ñ˜$ÔÜ˜DÓ!ˆà#+¨NÑ#;×#BÑ#BÄ2Ç:Á:Ó#Nˆ�Ñ ØˆÜ
×Ñ˜f×.Ñ.¨wÓ7¸ÕBr)   Úinfvalc                 ó²   — t        ddgd|gdœ«      }d}t        j                  t        |¬«      5  |}|j	                  |«       d d d «       y # 1 sw Y   y xY w)Nr  r   rº  )Ú
WithoutInfÚWithInfz[Column WithInf contains infinity or -infinitywhich is outside the range supported by Stata.r¸   ©r   r   r¡  r¢  rM   )r;   r  rP   rƒ   rÁ   rR   s         r*   Útest_infzTestStata.test_inf…  s[   € ô  s¨C j¸cÀ6¸]ÑKÓLˆð=ð 	ô �]‰]œ:¨SÔ1ñ 	ØˆDØ�K‰K˜Ô÷	÷ 	ñ 	ús   °AÁAc                 óœ  — t        dt        j                  d«      j                  d«      z  t	        j
                  t        d«      «      t	        j
                  t        d«      D �cg c]  }d|› �‘Œ	 c}«      ¬«      }d|j                  _	        d	„ }t        j                  |j                  ||«      }t        j                  ||«       y c c}w )
Nr=  rt  ©é   r   ÚABCDr   úi-©rI   r2   r2   c                 ó6   — t        | «      j                  d«      S )Nr2   )r   r4  r©  s    r*   rª  z-TestStata.test_path_pathlib.<locals>.<lambda>˜  s   € œ: a›=×2Ñ2°7Ó;€ r)   )r   rb   r¬  r«  r�   rÚ  rN  r   r2   r3   rN   Úround_trip_pathlibrM   rO   )r;   rP   r!  rƒ   r�  rZ  s         r*   Útest_path_pathlibzTestStata.test_path_pathlib‘  s—   € ÜØ”"—)‘)˜C“.×(Ñ(¨Ó1Ñ1Ü—H‘HœT &›\Ó*Ü—(‘(¬e°B«iÖ8¨˜b  šHÒ8Ó9ô
ˆð
  ˆ�‰ŒÙ;ˆÜ×&Ñ& r§{¡{°F¸IÓFˆÜ
×Ñ˜b &Õ)ùò 9s   Á%C	rK   c                 ó   — dg d¢i}t        |¬«      }|d   j                  d«      |d<   |}|j                  ||¬«       t        |d¬«      5 }|j	                  «       }d d d «       dddd	d
dœik(  sJ ‚y # 1 sw Y   ŒxY w)NÚA)ÚBÚEÚCr(  r*  ©r.   rå   rR  Tr½  r)  r+  r*  )r   r   r   r   )r   rn   rM   r   rÑ  )r;   rK   rP   rp  rƒ   rR   Údta_iterrÑ  s           r*   Útest_value_labels_iteratorz$TestStata.test_value_labels_iteratorœ  s�   € ð Ò+Ð,ˆÜ˜AÔˆØ�S‘'—.‘. Ó,ˆˆ3‰ØˆØ
�‰�D kˆÔ2ä˜ tÔ,ð 	3°Ø#×0Ñ0Ó2ˆL÷	3à ¨°¸ÀÑ%EÐFÒFÐFÑF÷	3ð 	3ús   ÁA4Á4A=c                 ó”  — t        dt        j                  d«      j                  d«      z  t	        j
                  t        d«      «      t	        j
                  t        d«      D �cg c]  }d|› �‘Œ	 c}«      ¬«      }d|j                  _	        |}|j                  |«       t        |d¬	«      }t        j                  ||«       y c c}w )
Nr=  rt  r  r!  r   r"  r#  r2   ©Ú	index_col)r   rb   r¬  r«  r�   rÚ  rN  r   r2   r3   rM   r   rN   rO   )r;   rP   r!  rƒ   rR   rõ  s         r*   Útest_set_indexzTestStata.test_set_index©  s—   € äØ”"—)‘)˜C“.×(Ñ(¨Ó1Ñ1Ü—H‘HœT &›\Ó*Ü—(‘(¬e°B«iÖ8¨˜b  šHÒ8Ó9ô
ˆð
  ˆ�‰ŒØˆØ
�‰�DÔÜ˜D¨GÔ4ˆÜ
×Ñ˜b &Õ)ùò 9s   Á%CÚcolumn)ÚmsrS  ÚweekrR  ÚqtrÚhalfrL  c                 ó„   — t         |dddd«      «      }|j                  d|f   }|j                  d|dz   f   }||k(  sJ ‚y )Nr-   r.   r/   zstata13_dates.dtar   Ú_fmt)r   rS  )r;   r3  r4   rƒ   Úunformattedrf  s         r*   Ú(test_date_parsing_ignores_format_detailsz2TestStata.test_date_parsing_ignores_format_details¶  sQ   € ô ™  v¨wÐ8KÓLÓMˆØ—f‘f˜Q ˜YÑ'ˆØ—F‘F˜1˜f v™oÐ-Ñ.ˆ	Ø˜iÒ'Ð'Ñ'r)   ÚlittleÚbigc                 ó`  — t        dddddddt        j                  d«      ddddz  dgd	d
dddddt        j                  d«      ddddggg d¢¬«      }t        |d   t        ¬«      |d<   t        |d   t        j
                  ¬«      |d<   t        |d   t        j                  ¬«      |d<   |d   j                  t        j                  «      |d<   t        |d   t        j                  ¬«      |d<   d|j                  _        |j                  «       }|}|j                  |ddi|dgd¬«       | j                  |«      }|d d  }|d   j                  d«      |d<   |r|d   j                  d«      |d<   t        j                   |j#                  d«      |«       t        j                   ||«       y )Nr;  r<  r   r=  r>  r%   Áý  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiˆ  zstring-1zobject-1z
2003-12-26r&   Áý  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbr	  )r;  r<  rd   re   rf   rl   rm   r   rw  Ús2045ÚsrtlÚforced_strlrA  rV   rd   re   rf   rl   r2   r   rB  rC  rC   )r1   rä  Úconvert_strlr@   r¶   rD  )r   rb   rE  r   r<  rd   re   rn   rf   rl   r2   r3   rë   rM   r=   rN   rO   r4  )	r;   rä  rP   rF  r5  rë   rR   r6  rs   s	            r*   Útest_writer_117zTestStata.test_writer_117Ê  sÎ  € äð ØØØØØØÜ—M‘M ,Ó/ØØØ˜$‘JØðð ØØØØØØÜ—M‘M ,Ó/ØØØØððò<ô?-
ˆô\ $ H¨XÑ$6¼fÔEˆ�ÑÜ! (¨6Ñ"2¼"¿'¹'ÔBˆ�ÑÜ" 8¨GÑ#4¼B¿H¹HÔEˆ�ÑØ$ WÑ-×4Ñ4´R·X±XÓ>ˆ�ÑÜ$ X¨iÑ%8ÄÇ
Á
ÔKˆ�ÑØ%ˆ�‰ÔØ�}‰}‹ˆØˆØ×ÑØØ% tÐ,ØØ'˜Øð 	ô 	
ð "&§¡¨tÓ!4Ðà™A�;ˆà'¨
Ñ3×:Ñ:¸8ÓDˆ�ÑÙà!)¨(Ñ!3×!:Ñ!:¸5Ó!AˆH�XÑä
×ÑØ"×,Ñ,¨WÓ5Øô	
ô 	×Ñ˜h¨Õ-r)   c                 óz  — t        g d¢g d¢gg d¢¬«      }d|j                  _        d}t        j                  t
        |¬«      5  |}|j                  |dd	gd
¬«       | j                  |«      }|j                  d«      }|j                  |_	        t        j                  ||d¬«       d d d «       y # 1 sw Y   y xY w)N)Á¸  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar(  rì  )Áè  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbr)  rí  )Ú2long1long1long1long1long1long1long1long1long1long1Úlongr   rH   r2   rd  r¸   rJ  r   rC   )rD  r@   Fr}   )r   r2   r3   rN   r¼   r   rM   r=   r4  rI   rO   )r;   rP   r5  rÁ   rR   rõ  s         r*   Útest_convert_strl_name_swapz%TestStata.test_convert_strl_name_swap  s°   € ÜÚ'Ò)DÐEÚ-ô
ˆð &ˆ�‰ÔàKˆÜ×'Ñ'Ô(9ÀÔEñ 	LØˆDØ×Ñ˜d°&¸!°ÀcÐÔJØ—]‘] 4Ó(ˆFØ×%Ñ% gÓ.ˆFØ%×-Ñ-ˆFŒNÜ×!Ñ! &¨(ÀUÕK÷	L÷ 	Lñ 	Lús   ÁA$B1Â1B:c                 ó\  — t        j                  ddddddd«      t        j                  ddddddd«      t        j                  dd	d
d	d
d	d«      g}t        g d¢g d¢|dœ«      }|}d}t        j                  t
        |¬«      5  |j                  |ddi¬«       d d d «       y # 1 sw Y   y xY w)Nrä  rª   r«   rå  ræ  r›  rç  rè  r©   r   ré  rê  rë  rï  z0convert_dates key must be a column or an integerr¸   Ú
wrong_namerB  r0   )ró  r   r   r   r¡  r¢  rM   )r;   rP   rò  r5  rR   rÁ   s         r*   Útest_invalid_date_conversionz&TestStata.test_invalid_date_conversion(  s¸   € ô �K‰K˜˜b " b¨"¨b°%Ó8Ü�K‰K˜˜b " b¨"¨b°%Ó8Ü�K‰K˜˜a  A q¨!¨TÓ2ð
ˆô
 â'Ú5Øñó
ˆð ˆØ@ˆÜ�]‰]œ:¨SÔ1ñ 	HØ×Ñ˜d°<ÀÐ2FÐÔG÷	H÷ 	Hñ 	Hús   ÂB"Â"B+c                 óB  — t        g d¢t        j                  g d¢«      dœ«      }|}d}t        j                  t
        |¬«      5  |j                  |ddi¬«       d d d «       | j                  |«      }d	|j                  v sJ ‚d|j                  v sJ ‚y # 1 sw Y   Œ;xY w)
N©r   r   r   )ú
2020-01-01z
2020-01-02z
2020-01-03)Ú	1bad_nameÚdate_colrd  r¸   rS  r�  r0   Ú
_1bad_name)	r   r�   Úto_datetimerN   r¼   r   rM   r=   rI   )r;   rP   rƒ   rR   rÁ   rZ  s         r*   Ú'test_convert_dates_with_renamed_columnsz1TestStata.test_convert_dates_with_renamed_columns<  s¢   € ô â&ÜŸN™NÒ+UÓVñó
ˆð ˆØKˆÜ×'Ñ'Ô(9ÀÔEñ 	@Ø�K‰K˜¨Z¸Ð,>ˆKÔ?÷	@ð —‘˜tÓ$ˆØ˜vŸ~™~Ñ-Ð-Ð-Ø˜VŸ^™^Ñ+Ð+Ñ+÷	@ð 	@ús   ÁBÂBc                 ób  — t        j                  «       }t        dt        j                  d«      j                  d«      z  t        j                  t        d«      «      t        j                  t        d«      D �cg c]  }d|› �‘Œ	 c}«      ¬«      }d|j                  _        |}|j                  ||¬	«       |j                  d
«       t        |d«      5 }|j                  |j!                  «       «       d d d «       t#        |d¬«      }t%        j&                  ||«       y c c}w # 1 sw Y   Œ2xY w)Nr=  rt  r  r!  r   r"  r#  r2   r²  r   Úwbr0  )r-   ÚBytesIOr   rb   r¬  r«  r�   rÚ  rN  r   r2   r3   rM   ÚseekÚopenÚwriter¬  r   rN   rO   )	r;   r@   rP   Úbior!  rƒ   rR   Údtarõ  s	            r*   Útest_nonfile_writingzTestStata.test_nonfile_writingN  sæ   € ô �j‰j‹lˆÜØ”"—)‘)˜C“.×(Ñ(¨Ó1Ñ1Ü—H‘HœT &›\Ó*Ü—(‘(¬e°B«iÖ8¨˜b  šHÒ8Ó9ô
ˆð
  ˆ�‰ŒØˆØ
�‰�C ˆÔ)Ø�‰�ŒÜ�$˜Óð 	" Ø�I‰I�c—h‘h“jÔ!÷	"ä˜D¨GÔ4ˆÜ
×Ñ˜b &Õ)ùò 9÷	"ð 	"ús   Á9D Ã D%Ä%D.c                 óD  — t        dt        j                  d«      j                  d«      z  t	        j
                  t        d«      «      t	        j
                  t        d«      D �cg c]  }d|› �‘Œ	 c}«      ¬«      }d|j                  _	        |}t        j                  |d	«      5 }|j                  |d
¬«       d d d «       t        j                  |d«      5 }t        |d¬«      }d d d «       t        j                  |«       y c c}w # 1 sw Y   ŒQxY w# 1 sw Y   Œ1xY w)Nr=  rt  r  r!  r   r"  r#  r2   rX  rB   r²  Úrbr0  )r   rb   r¬  r«  r�   rÚ  rN  r   r2   r3   ÚgzipÚGzipFilerM   r   rN   rO   )r;   rP   r!  rƒ   rR   Úgzrõ  s          r*   Útest_gzip_writingzTestStata.test_gzip_writing`  så   € äØ”"—)‘)˜C“.×(Ñ(¨Ó1Ñ1Ü—H‘HœT &›\Ó*Ü—(‘(¬e°B«iÖ8¨˜b  šHÒ8Ó9ô
ˆð
  ˆ�‰ŒØˆÜ�]‰]˜4 Ó&ð 	)¨"Ø�K‰K˜ CˆKÔ(÷	)ä�]‰]˜4 Ó&ð 	7¨"Ü ¨gÔ6ˆF÷	7ä
×Ñ˜b &Õ)ùò 9÷	)ð 	)ú÷	7ð 	7ús   Á%DÂ&D
ÃDÄ
DÄD)Ústata16_118Ústata16_be_118Ústata16_119Ústata16_be_119c           	      óº   — | j                   |ddd|› d�«      «      }g d¢}g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g}t        ||¬«      }t        j                  ||«       y )Nr-   r.   r/   r‘   )Úutf8Úlatin1ÚasciiÚ	utf8_strlÚ
ascii_strl)õ   Ï�Î±Î·Î´Î±Ï‚u   PÃ„NDÃ„SÚprp  rq  )õ   Æ¤Ä€Å„Ä�Ä…Åœõ   Ã–r%   rr  r%   )õ   á´˜á´€á´Žá´…á´€Sõ   ÃœÚnrt  rv  )ú      rw  rp  rw  rp  )ú r	  r%   rx  r%   )r	  r	  rŽ  r	  rŽ  )r	  r	  rx  r	  rx  rH   )r=   r   rN   rO   )r;   r<   r4   Ú
unicode_dfrI   ry  rs   s          r*   Útest_unicode_dta_118_119z"TestStata.test_unicode_dta_118_119p  sb   € ð —]‘]¡8¨D°&¸'ÀdÀVÈ4À=Ó#QÓRˆ
âHˆâBÚ<ÚDÚ4Ú$Ú"Ú"ð
ˆô ˜V¨WÔ5ˆä
×Ñ˜j¨(Õ3r)   c                 óÊ  — dddœd ddœg}t        |«      }|j                  j                  d«      |_        |}|j                  |dd¬«       t	        |«      }|j                  d	«      }t        j                  ||«       d |d
<   |j                  |dd
gd¬«       t	        |«      }|j                  d	«      }|r|d
   j                  d«      |d
<   t        j                  ||«       y )NÁ¸  stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringr   )ÚmixedÚnumberr   rf   FrC   rJ   r	  r}  )rK   rD  r@   rD  )r   r~  rn   rM   r   ÚfillnarN   rO   )r;   rP   rF  ÚoutputrR   rõ  rs   s          r*   Útest_mixed_string_strlz TestStata.test_mixed_string_strlŠ  sÝ   € à*°aÑ8ÀDÐTUÑ:VÐWˆÜ˜6Ó"ˆØŸ™×,Ñ,¨WÓ5ˆŒàˆØ�‰˜¨%¸ˆÔ=Ü˜DÓ!ˆØ—=‘= Ó$ˆÜ
×Ñ˜f hÔ/ð ˆˆw‰Ø�‰˜¨%¸w¸iÐQTˆÔUÜ˜DÓ!ˆØ—=‘= Ó$ˆÙØ (¨Ñ 1× 8Ñ 8¸Ó ?ˆH�WÑÜ
×Ñ˜f hÕ/r)   c                 ó¾   — dddœd ddœg}t        |«      }d |d<   t        j                  t        d¬«      5  |j	                  ||¬«       d d d «       y # 1 sw Y   y xY w)NÚnoner   )rƒ  r~  r   z Column `none` cannot be exportedr¸   r²  r  )r;   r@   rP   r€  s       r*   Útest_all_none_exceptionz!TestStata.test_all_none_exceptionŸ  s]   € à!¨QÑ/¸$È!Ñ1LÐMˆÜ˜6Ó"ˆØˆˆv‰Ü�]‰]œ:Ð-OÔPñ 	8Ø�O‰O˜I¨wˆOÔ7÷	8÷ 	8ñ 	8ús   ¶AÁAc                 óÒ   — d}t        |gdg¬«      }d}d}t        j                  t        dj	                  ||g«      ¬«      5  |j                  |«       d d d «       y # 1 sw Y   y xY w)Nu9   Here is one __ï¿½__ Another one __Â·__ Another one __Â½__ÚinvalidrH   z\'latin-1' codec can't encode character '\\ufffd' in position 14: ordinal not in range\(256\)zP'ascii' codec can't decode byte 0xef in position 14: ordinal not in range\(128\)ú|r¸   )r   r   r¡  ÚUnicodeEncodeErrorrß  rM   )r;   r@   rP   Úcontentrƒ   Úmsg1Úmsg2s          r*   Útest_invalid_file_not_writtenz'TestStata.test_invalid_file_not_written§  sj   € àMˆÜ˜�y¨9¨+Ô6ˆð;ð 	ð
+ð 	ô �]‰]Ô-°S·X±X¸tÀT¸lÓ5KÔLñ 	#Ø�K‰K˜	Ô"÷	#÷ 	#ñ 	#ús   ÁAÁA&c                 óø  — t        dgdz  dgdz  gddg¬«      }|j                  |ddg¬«       t        |d	«      5 }|j                  «       }d}|j	                  d
«      |v sJ ‚|j	                  d«      |v sJ ‚|j                  d«      d   dd }|j                  d«      dd  D ]@  }|j                  d«      d   }||j                  d«      dz      }	t        |«      |	dz
  k(  rŒ@J ‚ 	 d d d «       y # 1 sw Y   y xY w)NÚpandasr   u   Ã¾Ã¢Ã‘Ã�Ã…Â§Úvar_strÚvar_strlrH   rC   )r@   rD  ra  zlatin-1zutf-8s   strlsr   rÇ  s   GSOó    ó   ‚)r   rM   r[  r¬  ÚencodeÚsplitÚfindrÙ  )
r;   rP   r€  rõ  r‰  rs   ÚgsosÚgsor#  Úsizes
             r*   Útest_strl_latin1zTestStata.test_strl_latin1¶  s  € äØˆZ˜!‰^˜nÐ-°Ñ1Ð2¸YÈ
Ð<Sô
ˆð 	�‰˜	¨3¸j¸\ˆÔJÜ�)˜TÓ"ð 		, fØ—k‘k“mˆGØ%ˆHØ—?‘? 9Ó-°Ñ8Ð8Ð8Ø—?‘? 7Ó+¨wÑ6Ð6Ð6Ø—=‘= Ó*¨1Ñ-¨a°Ð3ˆDØ—z‘z &Ó)¨!¨"Ð-ò ,�Ø—i‘i Ó(¨Ñ,�Ø˜3Ÿ8™8 GÓ,¨qÑ0Ñ1�Ü˜3“x 4¨!¡8Ó+Ð+Ð+ñ,÷		,÷ 		,ñ 		,ús   »B'C0Ã#C0Ã0C9c                 óL  — d} |dddd«      }t        j                  t        d|¬«      5 }t        |«      }t	        |«      dk(  sJ ‚|d	   j
                  j                  d	   |k(  sJ ‚	 d d d «       t        d
ggdz  dg¬«      }t        j                  |«       y # 1 sw Y   Œ3xY w)Na  
One or more strings in the dta file could not be decoded using utf-8, and
so the fallback encoding of latin-1 is being used.  This can happen when a file
has been incorrectly encoded by Stata or some other software. You should verify
the string values returned are correct.r-   r.   r/   zstata1_encoding_118.dtaÚonce)Úfilter_levelr¹   r   r   u   DÃ¼sseldorfé—   rW  rH   )	rN   r¼   ÚUnicodeWarningr   rÙ  Úmessagerb  r   rO   )r;   r4   rÁ   rR   r  rY  rs   s          r*   Útest_encoding_latin1_118z"TestStata.test_encoding_latin1_118È  s®   € ð+ˆñ ˜˜f gÐ/HÓIˆÜ×'Ñ'Ü¨°sô
ð 	/àÜ  Ó&ˆGä�q“6˜Q’;Ð�;Ø�Q‘4—<‘<×$Ñ$ QÑ'¨3Ò.Ð.Ñ.÷	/ô ˜}˜oÐ.°Ñ4¸{¸mÔLˆÜ
×Ñ˜g xÕ0÷	/ð 	/ús   ª=BÂB#c                 óð   — t        j                   |dddd«      d«      5 }t        |«      5 }|j                  «        |j                  dk(  sJ ‚	 d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr-   r.   r/   zstata1_119.dta.gzra  iç€  )rb  r[  r   r  Ú_nvar)r;   r4   rd  r�  s       r*   Útest_stata_119zTestStata.test_stata_119Þ  sz   € ô
 �Y‰YÙ�T˜6 7Ð,?Ó@À$ó
ð 	-àÜ˜R“ð - FØ×#Ñ#Ô%Ø—|‘| uÒ,Ð,Ñ,÷-÷	-ð 	-÷-ð -ú÷	-ð 	-ús"    A,¬"A ÁA,Á A)	Á%A,Á,A5)rD   rE   Nc                 ó  — t        j                  g d¢d¬«      }t        g d¢g d¢g d¢gg d¢¬«      }||d	<   d
dddddœ}d}dddddœi}|d   j                  t        j
                  «      |d<   t        |||dg|d|||¬«	      }	|	j                  «        t        |«      }
|d   j                  d«      |d<   |d   j                  |d   «      j                  d«      j                  j                  «       |d<   t        j                  ||
«       t        |«      5 }|j                   |k(  sJ ‚|j#                  «       |k(  sJ ‚	 d d d «       |j%                  ||d¬«       t        |«      }t        j                  ||«       y # 1 sw Y   Œ?xY w)N)r%   õ   Î²õ   Ä‰Træ   )r   r   u   á´¬u   á´€ relatively long Å�tring)rº  r   u   á´®r	  )r   r   u   á´°N)õ   Ã…r¥  r¦  ÚstrlsrH   õ	   á´�á´¬áµ€rì  u	   áµˆáµ‰áµŠu   á´Žáƒ¢áƒ„á‚²á‚³á‚´á‚¶á‚ºzLong Stringsr	  )r§  r¥  r¦  r¨  r©  u   á´…aáµ€a-labelr¥  Úlabelu   Ã¦Ã¸Ã¥u   Å‹ot valid latin-1rP  r¨  F)r-  rD  r+  rK   rä  r@   rÑ  rå   )r@   rK   )r�   r†  r   rn   rb   rf   r   Ú
write_filer   r  Úreplacerô   rl  rN   rO   r   r-  r+  rM   )r;   r@   rä  rP   rô   r.   r+  r-  rÑ  Úwriterr[  r�  Úreread_to_statas                r*   Útest_utf8_writerzTestStata.test_utf8_writerê  s¦  € ô �n‰nÒ.¸Ô=ˆÜâ>Ú#Ú%ðò
 0ô
ˆð  ˆˆ[ÑàØØ,Ø#Øñ
ˆð &ˆ
Ø '¨hÐ;OÑPÐQˆØ˜$‘Z×&Ñ&¤r§x¡xÓ0ˆˆT‰
Ü ØØØ!Ø!˜Ø+ØØØØ%ô

ˆð 	×ÑÔÜ# IÓ.ˆà˜W™×,Ñ,¨RÓ0ˆˆW‰ð �‰J×Ñ˜|¨DÑ1Ó2×9Ñ9¸*ÓE×IÑI×TÑTÓVð 	ˆT‰
ô 	×Ñ˜d NÔ3Ü˜Ó#ð 	? vØ×$Ñ$¨
Ò2Ð2Ð2Ø×)Ñ)Ó+¨Ò>Ð>Ñ>÷	?ð 	�‰�i¨¸eˆÔDÜ$ YÓ/ˆÜ
×Ñ˜d OÕ4÷	?ð 	?ús   Ä'E=Å=Fc                 óX  — t        t        j                  dt        j                  ¬«      «      }t	        j
                  t        d¬«      5  t        ||d¬«       d d d «       t	        j
                  t        d¬«      5  t        ||d¬«       d d d «       y # 1 sw Y   Œ<xY w# 1 sw Y   y xY w)	N)r   iè€  rV   z"version must be either 118 or 119.r¸   rC   r²  zYou must use version 119rD   )r   rb   Úzerosrd   r   r¡  r¢  r   )r;   rP   rƒ   s      r*   Útest_writer_118_exceptionsz$TestStata.test_writer_118_exceptions  s€   € Ü”r—x‘x 
´"·'±'Ô:Ó;ˆÜ�]‰]œ:Ð-QÔRñ 	8Ü˜I r°3Õ7÷	8ä�]‰]œ:Ð-GÔHñ 	8Ü˜I r°3Õ7÷	8ð 	8÷	8ð 	8ú÷	8ð 	8ús   Á
BÁ<B ÂBÂ B)Údtype_backendÚnumpy_nullableÚpyarrow)Úmarksc                 óŽ  — |dk(  rdnd}t        t        j                  g d¢|¬«      g d¢g d¢g d¢t        j                  d	d
d¬«      dœt        j                  g d¢d¬«      ¬«      }|j                  |¬«      }|dz  }|j                  |d¬«       |j                  |«       | j                  |«      }t        ddt        j                  gg d¢ddt        j                  gg d¢t        j                  d	d
dd¬«      dœt        j                  t        d
«      d¬«      ¬«      }t        j                  |j                  d«      |«       y )Nr´  ÚInt64zint64[pyarrow])r   r   NrV   r$   )TFN)g      ø?g      @g      @z
2020-12-31r   ÚD)rþ  Úfreqr  ©r   r   r   r2   rá  ©r2   )r³  ztest_stata.dtarD   r²  r   r   r   r   r4  )rþ  rº  rG   )r   r�   rc   r   rÚ  Úconvert_dtypesrM   r=   rb   r�   r‚   r   rN   rO   r4  )	r;   r³  rP   Útmp_pathrW   rƒ   Ú
stata_pathr6  rs   s	            r*   Útest_read_write_ea_dtypesz#TestStata.test_read_write_ea_dtypes$  s  € ð
 )Ð,<Ò<‘ÐBRˆÜä—X‘Xšl°%Ô8Ú$Ú(Ú$Ü—]‘] <¸ÀÔEñô —(‘(š9¨7Ô3ô	
ˆð ×Ñ¨]ÐÓ;ˆØÐ 0Ñ0ˆ
Ø
�‰�J¨ˆÔ,à
�‰�IÔØ!%§¡¨yÓ!9Ðäà˜œBŸF™F�^Ú$Ø˜1œbŸf™fÐ%Ú$ä—]‘] <¸ÀÈ4ÔPñô —-‘-¤ a£¨wÔ7ô

ˆô 	×ÑÐ4×>Ñ>¸wÓGÈÕRr)   )r�   rB   rŽ   rC   rD   rE   c           
      ó\  — t        t        j                  ddgt        j                  ¬«      t        j                  ddgt        j                  ¬«      t        j                  ddgt        j
                  ¬«      dœ«      }t         |d	d
dd|› d�«      «      }t        j                  ||«       y )Ni�ÿÿÿrè  rV   i€ÿÿiä  i  €iäÿÿ©Úbyter¨  rJ  r-   r.   r/   Ústata_int_validranges_r‘   ©	r   rb   rc   rd   re   rf   r   rN   rO   ©r;   r@   r4   rs   rŸ   s        r*   Útest_read_data_int_validrangesz(TestStata.test_read_data_int_validrangesI  óŠ   € ääŸ™ $¨ ´B·G±GÔ<Ü—x‘x ¨ ´r·x±xÔ@ÜŸ™ +¨zÐ!:Ä"Ç(Á(ÔKñó
ˆô Ù�T˜6 7Ð.DÀWÀIÈTÐ,RÓSó
ˆô 	×Ñ˜f hÕ/r)   c           
      ó\  — t        t        j                  ddgt        j                  ¬«      t        j                  ddgt        j                  ¬«      t        j                  ddgt        j
                  ¬«      dœ«      }t         |d	d
dd|› d�«      «      }t        j                  ||«       y ©Ni€ÿÿÿé~   rV   i €ÿÿiþ  i   €iþÿÿrÂ  r-   r.   r/   rÄ  r‘   rÅ  rÆ  s        r*   Ú%test_read_data_int_validranges_compatz/TestStata.test_read_data_int_validranges_compatX  rÈ  r)   c           
      ó\  — t        t        j                  ddgt        j                  ¬«      t        j                  ddgt        j                  ¬«      t        j                  ddgt        j                  ¬«      dœ«      }t         |d	d
dd|› d�«      «      }t        j                  ||«       y rÊ  )r   rb   rc   re   rf   r   rN   rO   rÆ  s        r*   Ú,test_read_data_int_validranges_compat_nobytez6TestStata.test_read_data_int_validranges_compat_nobyteh  sŠ   € ääŸ™ $¨ ´B·H±HÔ=Ü—x‘x ¨ ´r·x±xÔ@ÜŸ™ +¨zÐ!:Ä"Ç(Á(ÔKñó
ˆô Ù�T˜6 7Ð.DÀWÀIÈTÐ,RÓSó
ˆô 	×Ñ˜f hÕ/r)   N)kÚ__name__Ú
__module__Ú__qualname__r=   r	   r   ÚmarkÚparametrizerT   rt   r…   r    rÄ   rÎ   rõ   rü   r  r2  r7  r9  rG  rO  rU  r\  rg  ru  rz  r‚  r”  rž  r¥  r¯  r³  r¸  r»  rÁ  rÄ  rÏ  rÒ  rÝ  rã  ró  r  r  r  r$  r7  r:  r<  rY  r`  rh  Úfilterwarningsrn  rr  r{  r�  r›  rŸ  r¶  Ústaticmethodr   r¯  rÂ  rÉ  rÍ  rÕ  rÚ  rÜ  râ  rø  rû  r  r  r  r  r  rb   Úinfr  r&  r.  r2  r;  rE  rK  rN  rV  r_  re  rz  r�  r„  rŒ  r™  r   Úslowr£  r¯  r²  Úparamr�  Ú
skip_if_norÀ  rÇ  rÌ  rÎ  r(   r)   r*   r8   r8   D   sÈ	  „ ò4ò0ð ‡[�[×Ñ˜YÒ(BÓCñ3ó Dð3ð ‡[�[×Ñ˜YÒ(BÓCñ!Eó Dð!EðF ‡[�[×Ñ˜YÒ(BÓCñ
Hó Dð
Hð ‡[�[×ÑØÒTóñ0óð0ò:;4ðz ‡[�[×ÑØÒHóñ
0óð
0ð ‡[�[×Ñ˜YÒ(FÓGñ)0ó Hð)0ðV ‡[�[×Ñ˜YÒ(AÓBñ+0ó Cð+0ð\ ‡[�[×ÑØò	
ó
ñCó
ðCð ‡[�[×ÑØò	
óñ&Fóð&FòPSò
ð  ‡[�[×Ñ˜YÒ(BÓCñ
ó Dð
ò2ò
+ð ‡[�[×Ñ˜YÒ(BÓCñ7ó Dð7òSð8 ‡[�[×Ñ˜YÒ(BÓCñ$Só Dð$SòLSð$ ‡[�[×Ñ˜YÒ(BÓCØ‡[�[×ÑØÒHóñSóó DðSð  ‡[�[×ÑØÒHóñ0óð0ð" ‡[�[×Ñ˜YÒ(BÓCñ3ó Dð3ð ‡[�[×Ñ˜YÒ(BÓCñ(ó Dð(ò@ð& ‡[�[×Ñ˜YÒ(BÓCñ@ó Dð@ò 8ò
SòSò&Sò /ò/òSò<Sð ‡[�[×Ñ˜YÒ(BÓCØ‡[�[×Ñ˜[¨3°¨*Ó5ñ!@ó 6ó Dð!@òFò0ò&$ò$"ð> ‡[�[×Ñ˜YªÓ8ñ0ó 9ð0ð  ‡[�[×Ñ˜YÒ(AÓBñ0ó Cð0ð  ‡[�[×Ñ˜Y¨¨c¨
Ó3ñ0ó 4ð0òH
òT5ò4-ð^ ‡[�[×Ñ˜YÒ(BÓCØ‡[�[×ÑØFóñ.-óó Dð.-ò`)ð ‡[�[×Ñ˜YÒ(BÓCñ-ó Dð-ð, ‡[�[×Ñ˜V m°]Ð%CÓDñ!ó Eð!ðF ‡[�[×Ñ˜V m°]Ð%CÓDñ8ó Eð8ð  ‡[�[×Ñ˜V m°]Ð%CÓDñ	9ó Eð	9ð ‡[�[×ÑÐ 5Ó6Ø‡[�[×ÑØò	
óð  ‡[�[×Ñ˜[¨1¨a¨&Ó1Ø‡[�[×ÑÐ3°e¸T°]ÓCØ‡[�[×Ñ˜_¨u°d¨mÓ<ñ!ó =ó Dó 2ó!ó 7ð(!ð> ð¨ð °yò ó ðò(3ð6 ‡[�[×ÑÐ 5Ó6Ø‡[�[×ÑØò	
óð ‡[�[×Ñ˜[¨1¨a¨&Ó1Ø‡[�[×ÑÐ3°e¸T°]ÓCØ‡[�[×Ñ˜_¨u°d¨mÓ<ñ !ó =ó Dó 2óó 7ð& !òD!ð  ‡[�[×Ñ˜YÒ(BÓCñ.ó Dð.ð. ‡[�[×Ñ˜YÒ(BÓCñYó DðYð ‡[�[×Ñ˜Y¨¨c¨
Ó3ñYó 4ðYòMò<.òB$ò$ò>ò*,ò ò Cð6 ‡[�[×Ñ˜X¨¯©°·±°Ð'8Ó9ñ	ó :ð	ò	*ð ‡[�[×Ñ˜]¨T°5¨MÓ:ñ
Gó ;ð
Gò*ð ‡[�[×ÑØÒEóñ(óð(ð" ‡[�[×Ñ˜[¨8°UÐ*;Ó<ñK.ó =ðK.òZLò Hò(,ð$ ‡[�[×Ñ˜YÒ(BÓCñ*ó Dð*ò"*ð  ‡[�[×ÑØò	
óñ4óð4ò"0ð* ‡[�[×Ñ˜YÒ(BÓCñ8ó Dð8ð ‡[�[×Ñ˜YÒ(BÓCñ#ó Dð#ò,ò$1ð, ‡[�[×Ññ	-ó ð	-ð ‡[�[×Ñ˜YÒ(8Ó9Ø‡[�[×Ñ˜[¨8°UÐ*;Ó<ñ/5ó =ó :ð/5òb8ð ‡[�[×ÑØØ	˜<˜6Ÿ<™<¨	¸¸¿¹ÀyÓ9QÔRÐSóñSó	ðSðB ‡[�[×Ñ˜YÒ(FÓGñ0ó Hð0ð ‡[�[×Ñ˜YÒ(AÓBñ0ó Cð0ð ‡[�[×Ñ˜Y¨¨c¨
Ó3ñ0ó 4ñ0r)   r8   r@   )r‰   rŠ   r‹   rŒ   r�   rB   c                 óü   —  |ddd«      }t         j                  j                  |d«      }t         j                  j                  |d| › d�«      }t        |«      }t        |«      }t	        j
                  ||d¬«       y )	Nr-   r.   r/   ústata-compat-118.dtaústata-compat-r‘   Fr  ©r£  rR   rß  r   rN   rO   ©r@   r4   Ú	data_baseÚrefÚoldrs   Úold_dtas          r*   Útest_backward_compatrã  x  sf   € á˜˜v wÓ/€IÜ
�'‰'�,‰,�yÐ"8Ó
9€CÜ
�'‰'�,‰,�y M°'°¸$Ð"?Ó
@€CÜ˜#‹€HÜ˜‹o€GÜ×Ñ˜' 8¸Ö?r)   r‡   rˆ   c                 ó  —  |ddd«      }t         j                  j                  |d«      }t         j                  j                  |d| › d�«      }t        |d¬«      }t        |d¬«      }t	        j
                  ||d¬	«       y )
Nr-   r.   r/   rÛ  rÜ  r‘   Fr0   r  rÝ  rÞ  s          r*   Ú%test_backward_compat_nodateconversionrå  ‚  sn   € ñ ˜˜v wÓ/€IÜ
�'‰'�,‰,�yÐ"8Ó
9€CÜ
�'‰'�,‰,�y M°'°¸$Ð"?Ó
@€CÜ˜#¨UÔ3€HÜ˜¨EÔ2€GÜ×Ñ˜' 8¸Ö?r)   r†   c                 óÂ   —  |dddd«      } |dddd| › d�«      }t        |d¬«      }|j                  d	g¬
«      }t        |d¬«      }t        j                  ||d¬«       y )Nr-   r.   r/   rÛ  rÜ  r‘   Fr0   Ús10rH   r  )r   ÚdroprN   rO   )r@   r4   rà  rá  rs   râ  s         r*   Útest_backward_compat_nostringré  Ž  sj   € ñ �4˜ Ð*@Ó
A€CÙ
�4˜ ¨M¸'¸À$Ð*GÓ
H€CÜ˜#¨UÔ3€Hà�}‰} e Wˆ}Ó-€HÜ˜¨EÔ2€GÜ×Ñ˜' 8¸Ö?r)   )r‰   rŠ   r‹   rŒ   r�   rB   rD   c                 ó˜   —  |dddd| › d�«      } |dddd| › d�«      }t        |«      }t        |«      }t        j                  ||«       y )Nr-   r.   r/   rÜ  r‘   ústata-compat-be-©r   rN   rO   ©r@   r4   rà  r=  rs   Úbig_dtas         r*   Útest_bigendianrï  ›  sW   € á
�4˜ ¨M¸'¸À$Ð*GÓ
H€CÙ
�4˜ Ð,<¸W¸IÀTÐ*JÓ
K€CÜ˜#‹€HÜ˜‹o€GÜ×Ñ˜' 8Õ,r)   c                 ó    —  |dddd| › d�«      } |dddd| › d�«      }t        |d¬«      }t        |d¬«      }t        j                  ||«       y )	Nr-   r.   r/   rÜ  r‘   rë  Fr0   rì  rí  s         r*   Útest_bigendian_nodateconversionrñ  ¥  s_   € ñ �4˜ ¨M¸'¸À$Ð*GÓ
H€CÙ
�4˜ Ð,<¸W¸IÀTÐ*JÓ
K€CÜ˜#¨UÔ3€HÜ˜¨EÔ2€GÜ×Ñ˜' 8Õ,r)   c                 ó  —  | dddd«      }t        |«      5 }|j                  «       j                  rJ ‚t        |j                  t
        j                  «      rJ ‚	 d d d «       t        |d«      5 }t        |«      5 }|j                  «       j                  rJ ‚|j                  |u sJ ‚	 d d d «       d d d «       t        |d«      5 }t        j                  |j                  «       «      5 }t        |«      5 }|j                  «       j                  rJ ‚|j                  |u sJ ‚	 d d d «       d d d «       d d d «       y # 1 sw Y   ŒâxY w# 1 sw Y   Œ xY w# 1 sw Y   Œ¤xY w# 1 sw Y   Œ>xY w# 1 sw Y   ŒBxY w# 1 sw Y   y xY w)Nr-   r.   r/   rÛ  ra  )r   r¬  Úemptyr€   Ú_path_or_bufr-   rY  r[  )r4   ÚmonkeypatchÚ	file_pathr�  Úfpr]  s         r*   Útest_direct_readrø  °  si  € Ù˜˜v wÐ0FÓG€Iô 
�YÓ	ð ? 6à—;‘;“=×&Ò&Ð&Ð&Ü˜f×1Ñ1´2·:±:Ô>Ð>Ð>Ð>÷?ô 
ˆi˜Ó	ð - "Ü˜‹_ð 	- Ø—{‘{“}×*Ò*Ð*Ð*Ø×&Ñ&¨"Ñ,Ð,Ñ,÷	-÷-ô 
ˆi˜Ó	ð 2 "Ü�Z‰Z˜Ÿ™›	Ó"ð 	2 cÜ˜SÓ!ð 2 VØ!Ÿ;™;›=×.Ò.Ð.Ð.Ø×*Ñ*¨cÑ1Ð1Ñ1÷2÷	2÷2ð 2÷?ð ?ú÷	-ð 	-ú÷-ð -ú÷2ð 2ú÷	2ð 	2ú÷2ð 2úsl   —AD<Á/EÁ;-EÂ)EÃ$E8Ã)E,Ã5-E Ä#E,Ä+E8Ä<EÅE	ÅEÅEÅ E)Å%E,Å,E5	Å1E8Å8FrA   Úuse_dictTFÚinferc                 ó$  — d}| r|r| }n||    }|d|› �z  }| }|rd}|rd| i}t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }	d	|	j                  _        ||z  }
|
j                  «        |	j                  |
||¬
«       | dk(  rDt        j                  |
d«      5 }t        j                  |j                  «       «      }d d d «       �n¼| dk(  rRt        j                   |
d«      5 }t        j                  |j                  |j"                  d   «      «      }d d d «       �ne| dk(  rbt%        j                  |
«      5 }t        j                  |j'                  |j)                  «       d   «      j                  «       «      }d d d «       nþ| dk(  rCt+        j                  |
d«      5 }t        j                  |j                  «       «      }d d d «       n¶| dk(  rTt-        j.                  d«      }|j                  |
d«      5 }t        j                  |j                  «       «      }d d d «       n]| dk(  rTt-        j.                  d«      }|j                  |
d«      5 }t        j                  |j                  «       «      }d d d «       n| €|
}t1        d	¬«      }|	}t3        j4                  ||«       y # 1 sw Y   Œ/xY w# 1 sw Y   Œ;xY w# 1 sw Y   ŒGxY w# 1 sw Y   ŒSxY w# 1 sw Y   Œ_xY w# 1 sw Y   ŒkxY w)Nzdta_inferred_compression.dtar  rú  Úmethodr   rI  rJ  rH   r2   )r@   Úcompressionrb  ra  rð  Úrr   ÚtarÚbz2ÚzstdÚ	zstandardÚxzÚlzmar0  )r   rb   rK  rL  rM  rN  r2   r3   ÚtouchrM   rb  r[  r-   rY  r¬  ÚzipfileÚZipFileÚfilelistÚtarfileÚextractfileÚgetnamesr   r   Úimportorskipr   rN   rO   )rý  r@   rù  rú  Úcompression_to_extensionr¾  Ú	file_nameÚfile_extÚcompression_argrƒ   rR   Úcompr÷  rÿ  r  r  rõ  rs   s                     r*   Útest_compressionr  Ç  s½  € ð /€IÙÙØ"‰Hà/°Ñ<ˆHØ�q˜˜
�^Ñ#ˆ	Ø!€OÙØ!ˆÙØ# [Ð1ˆä	Ü
�	‰	×Ñ˜aÓ ×0Ñ0°Ó9Ä4ÈÃ:ô
€Bð €B‡H�H„MØ�iÑ€DØ‡J�J„LØ‡K�K�˜g°?€KÔCØ�fÒÜ�Y‰Y�t˜TÓ"ð 	) dÜ—‘˜DŸI™I›KÓ(ˆB÷	)ñ 	)à	˜Ò	Ü�_‰_˜T 3Ó'ð 	9¨4Ü—‘˜DŸI™I d§m¡m°AÑ&6Ó7Ó8ˆB÷	9ñ 	9à	˜Ò	Ü�\‰\˜$Óð 	G 3Ü—‘˜CŸO™O¨C¯L©L«N¸1Ñ,=Ó>×CÑCÓEÓFˆB÷	Gð 	Gà	˜Ò	Ü�X‰X�d˜DÓ!ð 	) TÜ—‘˜DŸI™I›KÓ(ˆB÷	)ð 	)à	˜Ò	Ü×"Ñ" ;Ó/ˆØ�Y‰Y�t˜TÓ"ð 	) dÜ—‘˜DŸI™I›KÓ(ˆB÷	)ð 	)à	˜Ò	Ü×"Ñ" 6Ó*ˆØ�Y‰Y�t˜TÓ"ð 	) dÜ—‘˜DŸI™I›KÓ(ˆB÷	)ð 	)à	Ð	ØˆÜ˜ gÔ.€Fà€HÜ×Ñ˜& (Õ+÷1	)ð 	)ú÷	9ð 	9ú÷	Gð 	Gú÷	)ð 	)ú÷	)ð 	)ú÷	)ð 	)úsI   Â:$K
Ä2KÅAK"Ç$K.È$K:É3$LË
KËKË"K+Ë.K7Ë:LÌLrü  rð  r  )Nr^  rð  c                 óž  — d|› �}d}t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }d|j                  _        | |dœ}||z  }|j                  «        |j                  ||¬	«       | d
k(  s|d
k(  r‰t        j                  |d«      5 }t        |j                  «      dk(  sJ ‚|j                  d   j                  |k(  sJ ‚t        j                   |j#                  |j                  d   «      «      }	d d d «       n|}	t%        	d¬«      }
|}t'        j(                  |
|«       y # 1 sw Y   Œ/xY w)Nútest.ztest.dtar   rI  rJ  rH   r2   )rü  Úarchive_name©rý  rð  rþ  r   r   r0  )r   rb   rK  rL  rM  rN  r2   r3   r  rM   r  r  rÙ  r  Úfilenamer-   rY  r¬  r   rN   rO   )rü  r  r¾  r  r  rƒ   rý  rR   Úzpr÷  rõ  rs   s               r*   Útest_compression_dictr  ý  s.  € ð ˜�zÐ"€IØ€LÜ	Ü
�	‰	×Ñ˜aÓ ×0Ñ0°Ó9Ä4ÈÃ:ô
€Bð €B‡H�H„MØ#°\ÑB€KØ�iÑ€DØ‡J�J„LØ‡K�K� +€KÔ.Ø�‚˜( eÒ+Ü�_‰_˜T 3Ó'ð 	5¨2Ü�r—{‘{Ó# qÒ(Ð(Ð(Ø—;‘;˜q‘>×*Ñ*¨lÒ:Ð:Ð:Ü—‘˜BŸG™G B§K¡K°¡NÓ3Ó4ˆB÷	5ð 	5ð
 ˆÜ˜ gÔ.€Fà€HÜ×Ñ˜& (Õ+÷	5ð 	5ús   Â(A*EÅEc           
      óØ  — t        dt        g d¢d¬«      i«      }d|j                  _        |j	                  «       }|j                  || ¬«       t        |dd¬	«      5 }t        |«      D ]j  \  }}|j                  d«      }d|v sJ ‚t        j                  |j                  |j                  j                  d|z  d|d
z   z   t        |«      d
kD  ¬«       Œl 	 d d d «       y # 1 sw Y   y xY w)NÚcats)r%   r&   r%   r&   r'   rå   rV   r2   r²  r   F)r¦  r�  r   r}   )r   r   r2   r3   rë   rM   r   Ú	enumerater4  rN   ro   r  r®  rÙ  )r@   rP   rƒ   rs   r�  r!  Úblocks          r*   Útest_chunked_categoricalr  	  sÔ   € ä	�FœFÒ#<ÀJÔOÐPÓ	Q€BØ€B‡H�H„Mà�w‰w‹y€Hà‡K�K�	 7€KÔ+Ü	�Y¨!ÀÔ	Fð È&Ü! &Ó)ò 	‰HˆAˆuØ—O‘O GÓ,ˆEØ˜U‘?Ð"�?Ü×"Ñ"Ø—
‘
Ø—‘×"Ñ" 1 q¡5¨1°°A±©;Ð7Ü!$ U£¨a¡öñ	÷÷ ñ ús   ÁA9C Ã C)c           	      ó  —  | dddd«      }g d¢}d}t        |d¬«      5 }t        j                  t        |¬	«      5  t	        |«      D ]”  \  }}t        |j                  «      |d|z  d|d
z   z   k(  sJ ‚|dk  rt        j                  ddg«      }nt        j                  dgd¬«      }t        j                  |j                  j                  j                  |«       Œ– 	 d d d «       d d d «       t        j                  t        |¬	«      5  t        |d¬«      5 }|j                  «       }d d d «       d d d «       t        |«      }	t        j                  |	«       y # 1 sw Y   Œ}xY w# 1 sw Y   Œ�xY w# 1 sw Y   ŒKxY w# 1 sw Y   ŒOxY w)Nr-   r.   r/   ústata-dta-partially-labeled.dta)r%   r&   r%   r&   r   z.series with value labels are not fully labeledr   r¾  r¸   r   r%   r&   r   rm   rV   rv   )r   rN   r¼   r
   r  rN  r  r�   rÚ  rŒ  rô   rð   Ú__next__r   rO   )
r4   Údta_filery  rÁ   r�  r!  r  ÚidxÚlarge_chunkrö  s
             r*   Ú test_chunked_categorical_partialr%  *	  sj  € Ù˜˜f gÐ/PÓQ€HÚ&€FØ
:€CÜ	�X¨Ô	+ð F¨vÜ×'Ñ'Ô(DÈCÔPñ 	FÜ% fÓ-ò F‘��5Ü˜EŸJ™JÓ'¨6°!°a±%¸!¸qÀ1¹u¹+Ð+FÒFÐFÐFØ�q’5ÜŸ(™( C¨ :Ó.‘CäŸ(™( C 5°	Ô:�CÜ×%Ñ% e§j¡j§n¡n×&?Ñ&?ÀÕEñF÷	F÷Fô 
×	#Ñ	#Ô$@ÈÔ	Lñ ,Ü˜¨QÔ/ð 	,°6Ø Ÿ/™/Ó+ˆK÷	,÷,ô ˜Ó!€FÜ×Ñ˜& +Õ.÷	Fð 	Fú÷Fð Fú÷	,ð 	,ú÷,ð ,úsG   ŸE'»B#EÃE'Ä
E?ÄE3Ä)E?ÅE$	Å E'Å'E0Å3E<	Å8E?Å?Fr¦  )r  r   rì  c                 óÀ   —  | dddd«      }t        j                  t        d¬«      5  t        ||¬«      5  	 d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr-   r.   r/   r   zchunksize must be a positiver¸   r¾  )r   r¡  r¢  r   )r4   r¦  r"  s      r*   Útest_iterator_errorsr'  >	  s^   € á˜˜f gÐ/PÓQ€HÜ	�‰”zÐ)GÔ	Hñ Ü˜¨YÔ7ñ 	Ø÷	÷ð ÷	ð 	ú÷ð ús!   §AµA·AÁA	ÁAÁAc           
      ó@  — ddgdgdz  z   }t        t        d«      D �ci c]  }d|› �t        j                  |d¬«      “Œ c}«      }|j	                  | d	¬
«       t        j
                  g d¢«      }t        | d¬«      5 }t        |«      D ]x  \  }}t        d«      D ]9  }t        j                  |j                  j                  |   j                  |«       Œ; t        j                  ||j                  |dz  |dz   dz   «       Œz 	 d d d «       y c c}w # 1 sw Y   y xY w)NÚc_labelÚb_labelÚa_labelr  r   rò   Træ   FrR  )r+  r*  r)  rè  r¾  r   )r   r   r�   r†  rM   rÚ  r   r  rN   rŒ  rp   r®  rð   rO   )	rP   ry  r   rƒ   rs   r�  r5  r´  r!  s	            r*   Útest_iterator_value_labelsr,  F	  s  € à˜Ð# y k°CÑ&7Ñ7€FÜ	ÌUÐSTËXÖVÈ�c˜!˜�IœrŸ~™~¨f¸dÔCÑCÒVÓ	W€BØ‡K�K�	 u€KÔ-Ü�x‰xÒ9Ó:€HÜ	�I¨Ô	-ð K°Ü! &Ó)ò 	K‰HˆAˆuÜ˜1“Xò Q�Ü×%Ñ% e§l¡l×&7Ñ&7¸Ñ&:×&EÑ&EÀxÕPðQä×!Ñ! %¨¯©°°S±¸AÀ¹EÀS¹=Ð)IÕJñ	K÷Kð Kùò W÷Kð Kús   ž"DÁ>BDÄDc           	      óX  — t        t        d„ t        d«      D «       «      t        d„ t        d«      D «       «      ggddg¬«      }t        j                  t
        d¬	«      5  |j                  | d
¬«       d d d «       t        | «      }t        t        j                  t        j                  gddg¬«      }t        j                  |j                  |«       |j                  d   |j                  d   k(  sJ ‚|j                  d   t        |j                  d   «      k(  sJ ‚y # 1 sw Y   Œ­xY w)Nc              3   ó&   K  — | ]	  }d |z  –— Œ y­w©r   Nr(   ©Ú.0r!  s     r*   ú	<genexpr>z&test_precision_loss.<locals>.<genexpr>U	  s   è ø€ Ò&�qˆa��dÑ&ùó   ‚é<   c              3   ó&   K  — | ]	  }d |z  –— Œ y­wr/  r(   r0  s     r*   r2  z&test_precision_loss.<locals>.<genexpr>U	  s   è ø€ Ò+D°Q¨A¨q­DÑ+Dùr3  é4   r=  r<  rH   z&Column converted from int64 to float64r¸   FrR  r¼  )r   r<  )r   r=  )r   Úsumr   rN   r¼   r   rM   r   r   rb   rm   ro   rp   rS  Úfloat)rP   rƒ   rõ  Úexpected_dts       r*   Útest_precision_lossr:  S	  sý   € Ü	Ü
Ñ&œE "›IÔ&Ó
&¬Ñ+D¼%À»)Ô+DÓ(DÐ	EÐFØ˜Ð!ô
€Bô 
×	#Ñ	#ÜÐ%Mô
ñ 2ð 	�‰�I¨5ˆÔ1÷2ô ˜	Ó"€FÜœ"Ÿ*™*¤b§j¡jÐ1¸%ÀÐ9JÔK€KÜ×Ñ˜6Ÿ=™=¨+Ô6Ø�:‰:�kÑ" b§f¡f¨[Ñ&9Ò9Ð9Ð9Ø�:‰:�hÑ¤5¨¯©°Ñ)9Ó#:Ò:Ð:Ñ:÷2ð 2ús   Á D Ä D)c                 ó¦  — t        g d¢g d¢gddgg d¢¬«      }d|j                  _        |j                  || ¬«       t	        || d¬	«      }t        j                  ||«       t        j                  || «      5 }t        j                  |j                  «       «      }d d d «       t	        d¬
«      }t        j                  ||«       y # 1 sw Y   Œ-xY w)N©g¿¶~úÏš¿?g9DÜœJÎ?g>éD‚)â?©gÜ.4×i¤(@g33333þ@gÍÌÌÌ¤œAr(  r)  ©ÚXÚYÚZrâ  r2   r  ©rý  r1  r0  )r   r2   r3   rM   r   rN   rO   Údecompress_filer-   rY  r¬  )rý  rP   rƒ   rõ  ÚfhÚcontentss         r*   Útest_compression_roundtriprF  c	  s³   € Ü	Ú	'Ò)GÐHØ�CˆjÚô
€Bð
 €B‡H�H„Mà‡K�K�	 {€KÔ3Ü˜	¨{ÀgÔN€FÜ×Ñ˜"˜fÔ%ô 
×	Ñ	˜I {Ó	3ð )°rÜ—:‘:˜bŸg™g›iÓ(ˆ÷)ä˜¨GÔ4€FÜ×Ñ˜"˜fÕ%÷)ð )ús   Á7$CÃCÚto_inferÚ
read_inferc                 ó  — | }||   }d|› �}t        g d¢g d¢gddgg d¢¬«      }d|j                  _        |rd	n|}	|rd	n|}
||z  }|j                  «        |j	                  ||	¬
«       t        ||
d¬«      }t        j                  ||«       y )Nr  r<  r=  r(  r)  r>  râ  r2   rú  r  rB  )r   r2   r3   r  rM   r   rN   rO   )Úcompression_onlyrH  rG  r  r¾  rý  Úextr  rƒ   Úto_compressionÚread_compressionrR   rZ  s                r*   Útest_stata_compressionrN  v	  s�   € ð
 #€Kà
" ;Ñ
/€CØ�s�eˆ}€Hä	Ú	'Ò)GÐHØ�CˆjÚô
€Bð
 €B‡H�H„Má (‘W¨k€NÙ",‘w°+Ðà�hÑ€DØ‡J�J„LØ‡K�K� .€KÔ1Ü˜Ð*:ÀgÔN€FÜ×Ñ˜& "Õ%r)   c           	      ó˜  — t        g d¢ddt        j                  dt        j                  gg d¢t        j                  g d¢«      dœ«      }| }dd	d
dœdd	dœdœ}i |¥dddddœi¥}t        |||¬«      }|j                  «        t        |«      5 }|j                  «       }||k(  sJ ‚	 d d d «       d}ddddœi}t        j                  t        |¬«      5  t        |||¬«       d d d «       d}ddddddœi}t        j                  t        |¬«      5  t        |||¬«       d d d «       y # 1 sw Y   Œ‚xY w# 1 sw Y   ŒSxY w# 1 sw Y   y xY w)N)r   r   r   r   r   r   rº  g      "@)r©   r©   rß   r¨   r¬   )r5  r   r  r   r5  )Úfully_labelledÚpartially_labelledr@  rA  rÒ   rÕ   rØ   rP  )r   rº  )rP  rQ  rA  r5  r   r  r»  ©rÑ  zCCan't create value labels for notY, it wasn't found in the dataset.ÚnotYrø  rù  )r©   r¨   r¸   zUCan't create value labels for Z, value labels can only be applied to numeric columns.r%   r!  r   )r   rb   r�   r�   r†  r   r«  r   rÑ  r   r¡  r·  r¢  )	rP   r.   rR   rÑ  rs   r­  r�  Úreader_value_labelsrÁ   s	            r*   Ú!test_non_categorical_value_labelsrU  ‘	  sc  € Üâ-Ø#&¨¬R¯V©V°S¼"¿&¹&Ð"AÚ!Ü—‘Ò 9Ó:ñ		
ó€Dð €Dà#¨°'Ñ:Ø$)°Ñ6ñ€Lð ?�,Ð> ¨°¸Ñ%=Ñ>€Hä˜˜t°,Ô?€FØ
×ÑÔä	�TÓ	ð /˜fØ$×1Ñ1Ó3ÐØ" hÒ.Ð.Ñ.÷/ð P€CØ ¨XÑ6Ð7€LÜ	�‰”x sÔ	+ñ ;Ü�D˜$¨\Õ:÷;ð	2ð ð ˜S S¨S°SÑ9Ð:€LÜ	�‰”z¨Ô	-ñ ;Ü�D˜$¨\Õ:÷;ð ;÷/ð /ú÷;ð ;ú÷;ð ;ús$   ÂD(ÃD4ÄE Ä(D1Ä4D=Å E	c                 óˆ  — t        g d¢g d¢g d¢g d¢g d¢dœ«      }dddœdddœd	d
dœddiddidœ}dddœdddœd	d
dœddiddidœ}d}t        j                  t        |¬«      5  |j	                  | |¬«       d d d «       t        | «      5 }|j                  «       }||k(  sJ ‚	 d d d «       y # 1 sw Y   Œ6xY w# 1 sw Y   y xY w)N)r   r   r   r   rv   r¨   )r¨   r¨   rß   rß   r¨   r¨   )r   rv   rv   r­   r­   rß   ri  )z	invalid~!Ú	6_invalidÚ&invalid_name_longer_than_32_charactersÚ	aggregate©r   r   rø  rù  rZ  rÙ   rÖ   )r¨   rß   rv   rÝ   r   rØ   )Ú	invalid__Ú
_6_invalidÚ invalid_name_longer_than_32_charÚ
_aggregateÚ_1__2_rd  r¸   rR  )r   rN   r¼   r   rM   r   rÑ  )rP   r.   rÑ  rs   rÁ   r�  rT  s          r*   Ú0test_non_categorical_value_label_name_conversionr`  ·	  sÿ   € äâ+Ú+Ú6HÚ+Ú&ñ	
ó€Dð " hÑ/Ø! hÑ/Ø6=À&Ñ2IØ˜�[Ø�G�ñ€Lð " hÑ/Ø" xÑ0Ø07¸FÑ,CØ˜&�kØ�g�,ñ€Hð H€CÜ	×	#Ñ	#Ô$5¸SÔ	Añ <Ø�‰�i¨lˆÔ;÷<ô 
�YÓ	ð / 6Ø$×1Ñ1Ó3ÐØ" hÒ.Ð.Ñ.÷/ð /÷<ð <ú÷/ð /ús   Á#B,Â
B8Â,B5Â8Cc                 ó°  — dddddœi}t        dg d¢i«      }|j                  | |¬«       t        | d¬«      5 }|j                  «       }d d d «       |k(  sJ ‚d}d	d
j	                  dg«      z   }d|› d|› d|› d
�}t        j                  t        t        j                  |«      ¬«      5  t        | d¬«       d d d «       y # 1 sw Y   ŒxxY w# 1 sw Y   y xY w)NÚrepeated_labelsÚTenzMore than ten)r¬   r§   é(   )r¬   r¬   r§   r§   rd  rd  rR  Fr  zQ--------------------------------------------------------------------------------
r  z
Value labels for column a   are not unique. These cannot be converted to
pandas categoricals.

Either read the file with `convert_categoricals` set to False or use the
low level interface in `StataReader` to separately read the values and the
value_labels. This column's labels are stored under the key 'z=' in
`StataReader.value_labels()`.

The repeated labels are:
r¸   T)r   rM   r   rÑ  rß  r   r¡  r¢  r  r  r   )rP   rÑ  r.   r�  rT  rò   r  rÁ   s           r*   Ú;test_non_categorical_value_label_convert_categoricals_errorre  Ü	  s  € ð 	 ¨?ÀÑPð€Lô àÒ7ð	
ó€Dð 	‡M�M�)¨,€MÔ7ä	�Y°UÔ	;ð 4¸vØ$×1Ñ1Ó3Ð÷4à ,Ò.Ð.Ð.à
€CØ §	¡	¨?Ð*;Ó <Ñ<€GðØ˜ð >ð
 ?B¸Uð Cð 	€	ð 
ð€Cô 
�‰”z¬¯©°3«Ô	8ñ 9Ü�9°4Õ8÷9ð 9÷'4ð 4ú÷&9ð 9ús   ¸C Â)CÃ C	ÃCrW   c                 óæ  — t        t        g d¢«      t        dt        j                  t        j                  g| j                  ¬«      t        g d¢«      dœ«      }|j
                  j                  j                  j                  }|j                  dd«      }|dk(  rd	}n|d
k(  rd}t        j                  |   }t        |«      }t        d||gt        d¬«      }t        g d¢d¬«      }|j                  |d|¬«       t        |d¬«      }	t        j                  |j                   |	j                   «       t        j                  |	j
                  |«       t        j                  |	j"                  |«       y )Nrê  r   rV   )r%   r&   Nr$   Úur	  rg   rf   Úboolrd   r&   rØ  )r%   r&   r	  r'   rá  FrJ   Tr.  )r   r   r�   ÚNAr3   r&   rW   Únumpy_dtyper¬  r   ÚBASE_MISSING_VALUESr<  rM   r   rN   ro   r%   r'   )
rW   r@   rP   rƒ   Ú
dtype_nameÚvaluer4  Ú
expected_bÚ
expected_crõ  s
             r*   Útest_nullable_supportrp  
  s   € ô  
äšÓ(Ü˜œBŸE™E¤2§5¡5Ð)°·±Ô<ÜÒ(Ó)ñ	
ó
€Bð —‘—‘×'Ñ'×,Ñ,€Jà×#Ñ# C¨Ó,€JØ�WÒØ‰
Ø	�vÒ	Øˆ
Ü×1Ñ1°*Ñ=€EÜ
˜EÓ
"€CÜ˜˜C ˜¬V¸#Ô>€JÜš¨SÔ1€JØ‡K�K�	 u°g€KÔ>Ü˜	°4Ô8€FÜ×Ñ˜2Ÿ4™4 §¡Ô*Ü×Ñ˜6Ÿ8™8 ZÔ0Ü×Ñ˜6Ÿ8™8 ZÕ0r)   c                 óÐ  — t        t        d«      g d¢dœ¬«      j                  d«      }| }|j                  |dd¬«       t	        |«      }d	|v sJ ‚t        t        j                  d
«      t        j                  d«      dœ«      }t        j                  |j                  |«       t	        |dg¬«      }d	|vsJ ‚t        j                  |j                  |j                  dg   «       y )Nr   rê  r|   r,  r   FrC   rJ   r&   rf   rm   r%   rH   )r   r   rÌ  rM   r   r   rb   rW   rN   ro   rp   rS  )rP   rƒ   rR   Údf2rp   Údf3s         r*   Útest_empty_framert  +
  s½   € ô 
œe A›hª_Ñ=Ô	>×	CÑ	CÀAÓ	F€BØ€DØ‡K�K� %°€KÔ5ä
�TÓ
€CØ�#‰:Ðˆ:äœ"Ÿ(™( 7Ó+´"·(±(¸9Ó2EÑFÓG€FÜ×Ñ˜3Ÿ:™: vÔ.ä
�T C 5Ô
)€CØ�c‰>Ðˆ>Ü×Ñ˜3Ÿ:™: v§z¡z°3°%Ñ'8Õ9r)   c                 óD  — d}t        t        j                  |«      dg¬«      }t        j                  t
        j                  gdz  Ž D �cg c]  }dj                  |«      ‘Œ }}dt        |«      D �ci c]  }|||   “Œ
 c}i}|j                  | ||¬«       y c c}w c c}w )Niþÿ  rò   rH   r   r	  )rÑ  r@   )
r   rb   r¬  Ú	itertoolsÚproductr;  Úascii_lettersrß  r   rM   )rP   r@   rv  rƒ   r  Úlblsr!  rÑ  s           r*   Útest_many_strlrz  =
  s�   € à€AÜ	”2—9‘9˜Q“<¨%¨Ô	1€BÜ )× 1Ñ 1´V×5IÑ5IÐ4JÈQÑ4NÐ PÖQ˜1ˆB�G‰G�A�JÐQ€DÐQØ´°a³Ö9¨1˜A˜t A™w™JÒ9Ð:€LØ‡K�K�	¨¸g€KÕFùò RùÚ9s   Á
BÁ2B)rC   rD   rE   Nc                 ót   — t        dddœd ddœt        j                  ddœg«      }|j                  | |¬«       y )Nr|  r   )Ústr1r~  r   r²  )r   r�   ri  rM   )rP   r@   rƒ   s      r*   Útest_strl_missingsr}  F
  sA   € ô 
à#¨qÑ1Ø QÑ'Ü—U‘U aÑ(ð	
ó
€Bð ‡K�K�	 7€KÕ+r)   c                 óŠ   — t        ddgi«      }|j                  | d|¬«       t        | «      }t        j                  ||«       y )NÚdoubleByteColu¸  Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§Â§r   rJ   rL   )rP   r@   rƒ   Údf_inputs       r*   Útest_ascii_errorr�  T
  sA   € ô 
�O k ]Ð3Ó	4€BØ‡K�K�	 q°'€KÔ:Ü˜)Ó$€HÜ×Ñ˜"˜hÕ'r)   c                  ó¤   — t        j                  d«      } t        j                  t        d¬«      5  t        | «       d d d «       y # 1 sw Y   y xY w)Nsi   <stata_dta><header><release>999</release>                                                                z5either not a valid Stata dataset.*\(detected:\s*999\)r¸   )r-   rY  r   r¡  r¢  r   )Úbufs    r*   ÚDtest_stata_v117_prefix_with_unsupported_version_raises_version_errorr„  ^
  sA   € ä
�*‰*ÐPÓ
Q€CÜ	�‰ÜØFô
ñ ô 	�3Œ÷	÷ ñ ús   ±AÁAc                  ór   — t        j                  d¬«      } t        t        z   D ]  }t	        |«      | v rŒJ ‚ y )Niç  r²  )r   Úformatr   r   rD  )rÁ   r@   s     r*   Ú0test_version_error_lists_every_supported_versionr‡  h
  s;   € ô ×
Ñ
¨Ô
,€CÜ'Ô*>Ñ>ò #ˆÜ�7‹|˜sÒ"Ð"Ð"ñ#r)   rK  zfmt, expected, roundtriprN   iÐ  iá  rQ  ú
2021-06-01rÕ  éð   éõ   z
2021-04-01rÖ  rt  éz   z
2021-01-01r×  éä  éå  c           
      óÊ  — t        j                  t        j                  d¬«      «      }t        t	        dddt         j
                  ¬«      t	        ddd|¬«      gt        ¬	«      }t        j                  t        t        ¬
«      5  t        ||«      }d d d «       t        j                  t        |t        j                  ¬	«      d¬«       t        d|i«      }t        j                  t        t        ¬
«      5  |j!                  | d|id¬«       d d d «       t#        | «      }t        j$                  |t        dt        |d¬	«      i«      «       y # 1 sw Y   Œ½xY w# 1 sw Y   ŒMxY w)Néûÿÿÿ©ÚhoursrŒ  r   ©Útzinfor�  r­   é   rV   r¸   F)Úcheck_namesrp  ©r1   rK   r·   )ró  ÚtimezoneÚ	timedeltar   r   ÚUTCr<  rN   r¼   r   Úobject_date_depr_msgr   ro   rb   rm   r   rM   r   rO   )	rP   r  rs   Ú	roundtriprÿ  r»  rZ  rƒ   r6  s	            r*   Ú+test_to_stata_object_dates_heterogeneous_tzrœ  v
  s  € ô 
�‰”R—\‘\¨Ô+Ó	,€BÜ
Ü	�$˜˜1¤R§V¡VÔ	,¬h°t¸QÀÈ2Ô.NÐOÜô€Cô 
×	#Ñ	#¤NÔ:NÔ	Oñ :Ü/°°SÓ9ˆ÷:ô ×ÑØ”�x¤r§z¡zÔ2Àõô 
�C˜�:Ó	€BÜ	×	#Ñ	#¤NÔ:NÔ	Oñ LØ
�‰�I¨c°3¨ZÀUˆÔK÷Lä'¨	Ó2ÐÜ×ÑØ¤	¨3´°yÈÔ0PÐ*QÓ Rõ÷:ð :ú÷Lð Lús   ÂEÃ6EÅEÅE"c           
      óÒ  — t        j                  t        j                  d¬«      «      }t        t	        ddd«      d t	        ddd|¬«      gt
        ¬	«      }t        d
|i«      }t        j                  t        t        ¬«      5  |j                  | d
did¬«       d d d «       t        | «      }t        d
t        g d¢d¬	«      i«      }t        j                  ||«       y # 1 sw Y   ŒExY w)Nr�  r�  rŒ  r   r�  r­   r”  r’  rV   rp  r¸   rN   Fr–  )rQ  Nrˆ  r·   )ró  r—  r˜  r   r   r<  r   rN   r¼   r   rš  rM   r   rO   )rP   rÿ  r»  rƒ   r6  rs   s         r*   Ú3test_to_stata_object_dates_naive_and_aware_with_natrž  —
  sÍ   € ô 
�‰”R—\‘\¨Ô+Ó	,€BÜ
Ü	�$˜˜1Ó	˜t¤X¨d°A°rÀ"Ô%EÐFÌfô€Cô 
�C˜�:Ó	€BÜ	×	#Ñ	#¤NÔ:NÔ	Oñ MØ
�‰�I¨c°4¨[ÀeˆÔL÷Mä'¨	Ó2ÐÜØ	ŒfÒ7¸wÔGÐHó€Hô ×ÑÐ0°(Õ;÷Mð Mús   ÂCÃC&c                 óä   —  | dddd«      }t        |«      }|j                  dk(  sJ ‚|d   j                  t        j                  d«      k(  sJ ‚|d   j	                  «       j
                  dk(  sJ ‚y )	Nr-   r.   r/   zstata-date-overflow-36096.dta)r¬   r   Ú
tiempo_genr·   iÚã  )r   ÚshaperW   rb   ÚminrË   )r4   rR   rZ  s      r*   Ú test_read_stata_far_future_datesr£  ¨
  su   € ñ �D˜& 'Ð+JÓK€DÜ˜Ó€FØ�<‰<˜7Ò"Ð"Ð"Ø�,Ñ×%Ñ%¬¯©°'Ó):Ò:Ð:Ð:Ø�,Ñ×#Ñ#Ó%×*Ñ*¨eÒ3Ð3Ñ3r)   zfmt, value, expected, dtype))ú%tcg    eÍÍAz1960-01-12 13:46:40r¶   )ú%tdg     jø@z
2233-10-16r·   )ú%twç     ˆÃ@z
2152-04-22r·   )ú%tmr§  z
2793-05-01r·   )ú%tqç     ˆ³@z
3210-01-01r·   )ú%thrª  z
4460-01-01r·   )ú%tyg     ”Á@z
9000-01-01r·   c                 ó”   — t        t        |t        j                  g«      | «      }t	        j
                  |t        |d g|¬«      «       y )NrV   )r   r   rb   r�   rN   ro   )r  rm  rs   rW   rZ  s        r*   Ú"test_stata_elapsed_date_far_futurer®  ²
  s9   € ô 1´¸ÄÇÁ¸Ó1HÈ#ÓN€FÜ×Ñ˜6¤6¨8°TÐ*:À%Ô#HÕIr)   zerror::RuntimeWarningz
fmt, value))r¤  ç =‘`äXáC)r¥  g ÈNgmÁ«C)r¥  ç =‘`äXáÃ)r¦  g  �Ä¼ÖB)r¨  ç  @åœ0¢B)r©  r±  )r«  r±  )r¬  g  €L
QB)r¤  ç      àC)r¥  r²  )r¨  g      àÃ)r©  gUUUUUUÅÃ)r«  gUUUUUUµÃc                 ó�   — t        j                  t        d¬«      5  t        t	        |g«      | «       d d d «       y # 1 sw Y   y xY w)NzOut of boundsr¸   )r   r¡  r   r   r   )r  rm  s     r*   Ú,test_stata_elapsed_date_out_of_bounds_raisesr´  Å
  s<   € ô2 
�‰Ô*°/Ô	Bñ BÜ+¬F°E°7«O¸SÔA÷B÷ Bñ Bús	   œ<¼Arm  )g  €yïÓuBr¯  r°  r²  c                 óZ  — d}t        j                  t        |¬«      5  t        t	        | t
        j                  g«      d«      }d d d «       t        j                  t	        | t        j                  gt        ¬«      «       t        |j                  d   t        «      sJ ‚y # 1 sw Y   Œ^xY w)NzEncountered %tC formatr¸   z%tCrV   r   )rN   r¼   r½   r   r   rb   r�   ro   r�   r»   r<  r€   r®  r8  )rm  rÁ   rZ  s      r*   Ú,test_stata_elapsed_date_tc_upper_passthroughr¶  â
  s‚   € ð #€CÜ	×	#Ñ	#¤K°sÔ	;ñ UÜ4´V¸UÄBÇFÁF¸OÓ5LÈeÓTˆ÷Uä×Ñ˜6¤6¨5´"·&±&¨/ÄÔ#HÔIä�f—k‘k !‘n¤eÔ,Ð,Ñ,÷	Uð Uús   ž&B!Â!B*zfmt, dtype, value, expected)	)r¨  rd   éœÿÿÿú
1951-09-01)r¨  re   éD€ÿÿz
-765-01-01)r¨  rf   r·  r¸  )r¨  rl   r·  r¸  )r¨  rm   r·  r¸  )r©  rd   r·  z
1935-01-01)r«  rd   iˆÿÿÿz
1900-01-01)r¬  rd   rè  z
0100-01-01)r¬  re   r¹  z-32700-01-01c           	      óž   — t        t        |g|¬«      | «      }t        j                  |t        t	        j
                  |gd¬«      «      «       y )NrV   r·   )r   r   rN   ro   rb   rc   )r  rW   rm  rs   rZ  s        r*   Ú&test_stata_elapsed_date_narrow_storager»  î
  s;   € ô& 1´¸¸ÀuÔ1MÈsÓS€FÜ×Ñ˜6¤6¬"¯(©(°H°:ÀWÔ*MÓ#NÕOr)   )`r   r   ró  rb  r-   rv  r£  r  r;  r  r	  r  Únumpyrb   r   Úpandas.errorsr   r   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsr�  rŽ  r�   Úpandas._testingÚ_testingrN   Úpandas.core.framer   r   Úpandas.io.parsersr	   Úpandas.io.statar
   r   r   r   r   r   r   r   r   r   r   r   r   r   Úfixturer+   r6   r8   rÒ  rÓ  rã  rå  ré  rï  rñ  rø  r  r  r  r%  r'  r,  r:  rF  rN  rU  r`  re  ÚBooleanDtypeÚ	Int8DtypeÚ
Int16DtypeÚ
Int32DtypeÚ
Int64DtypeÚ
UInt8DtypeÚUInt16DtypeÚUInt32DtypeÚUInt64Dtyperp  rt  rz  r}  r�  r„  r‡  rš  rœ  rž  r£  r®  rÔ  r´  r¶  r»  r(   r)   r*   ú<module>rÐ     s*  ðÛ 
Û Ý Û Û 	Û Û 	Û 	Û Û Û Û ã Û ÷÷ *Ð )ã Ý ÷õ
 '÷÷ ÷ ÷ ð$ ‡�ñó ðð ‡�ñó ð÷q 0ñ q 0ðhA ‡�×Ñ˜Ò$BÓCñ@ó Dð@ð ‡�×Ñ˜ S¨# JÓ/ñ@ó 0ð@ð ‡�×Ñ˜ S EÓ*ñ	@ó +ð	@ð ‡�×Ñ˜Ò$GÓHñ-ó Ið-ð ‡�×Ñ˜ S¨# JÓ/ñ-ó 0ð-ò2ð. ‡�×Ñ˜Ò$>Ó?Ø‡�×Ñ˜ d¨E ]Ó3Ø‡�×Ñ˜ 4¨ -Ó0ñ0,ó 1ó 4ó @ð0,ðf ‡�×Ñ˜ E¨7Ð#3Ó4Ø‡�×Ñ˜Ò%9Ó:ñ,ó ;ó 5ð,ð0 ‡�×Ñ˜Ò$>Ó?ñó @ðò$/ð( ‡�×Ñ˜Ð&6Ó7ñó 8ðò
Kò;ò &ð& ‡�×Ñ˜ d¨E ]Ó3Ø‡�×Ñ˜¨¨e }Ó5ñ&ó 6ó 4ð&ò2#;òL"/òJ#9ðL ‡�×Ñ˜Ò$>Ó?Ø‡�×ÑØà
�‰Ø
�‰Ø
�‰Ø
�‰Ø
�‰Ø
�‰Ø
�‰Ø
�‰Ø
�‰ð
óñ1óó @ð1ò4:ð$ ‡�×Ñ˜Ò$>Ó?ñGó @ðGð ‡�×Ñ˜Ò$9Ó:ñ
,ó ;ð
,ð ‡�×Ñ˜Ò$9Ó:ñ(ó ;ð(òò#ð*ð ð ‡�×ÑØà	��Sˆz˜L¨,Ð7Ð8Ø	��Sˆz˜L¨,Ð7Ð8Ø	��Sˆz˜L¨,Ð7Ð8Ø	��dˆ|˜l¨LÐ9Ð:ð	óñóðò0<ò"4ð ‡�×ÑØ!òóñJóðJð ‡�×ÑÐ3Ó4Ø‡�×ÑØòóñ*Bó+ó 5ð,Bð ‡�×Ñ˜Ò"@ÓAñ-ó Bð-ð ‡�×ÑØ!òóñPóñPr)   