Ë
    AúYjq  ã                   óÔ  — d Z ddlmZmZ ddlZddlZddlmZ ddl	Z
ddl	mZmZ ddlmZ ddlmZ ddlmZmZ d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej>                  jA                  dddgddgddggfddgddgddggfddgddgddggfddgddgddggfg«      d„ «       Z!ej>                  jA                  dd d d!gd"d#ggfd$d d!gdd%ggfg«      d&„ «       Z"d'„ Z#d(„ Z$ej>                  jA                  d)g d*¢«      d+„ «       Z%d,„ Z&ej>                  jA                  d-g d.¢«      d/„ «       Z'ej>                  jA                  d0d1d2g«      d3„ «       Z(d4„ Z)d5„ Z*d6„ Z+d7„ Z,d8„ Z-d9„ Z.d:„ Z/ej>                  jA                  d;i d<e0d=d>œg«      d?„ «       Z1d@„ Z2dA„ Z3dB„ Z4dC„ Z5dD„ Z6ej>                  jA                  dEd1d2g«      dF„ «       Z7dG„ Z8ej>                  jA                  dHd1d2g«      dI„ «       Z9ej>                  jA                  dJg dK¢ e:dL«      ddfd e:dL«      dMgdNz  dfg dK¢ e:dL«      dd1fd e:dL«      dMgdNz  d2fd e:dL«      dMgdNz  d1fg dK¢ e:dL«      dd2fg«      dO„ «       Z;ej>                  jA                  dPg dK¢ e:dQ«      dd edRdSgg d>¢g dT¢dUdVejx                  gg¬W«      fg dK¢ e:dX«      ddd g edRdSgdYdUggdZd[gd\d]gdVejx                  gg¬W«      fg dK¢ e:dZ«      dg d^¢ edRdSgdYdUgd\dVggdZgd]gejx                  gg¬W«      fd e:dQ«      dMgdNz  d edRdSgg d>¢g dT¢dUdVejx                  gg¬W«      fd e:dX«      dMgdNz  dd g edRdSgdYdUggdZd[gd\d]gdVejx                  gg¬W«      fd e:dZ«      dMgdNz  g d^¢ edRdSgdYdUgd\dVggdZgd]gejx                  gg¬W«      fg«      d_„ «       Z=d`„ Z>da„ Z?db„ Z@dc„ ZAdd„ ZBde„ ZCdf„ ZDej>                  jŠ                  ej>                  jŒ                  dg„ «       «       ZGy)hz‘
Tests the 'read_fwf' function in parsers.py. This
test suite is independent of the others because the
engine is set to 'python-fwf' internally.
é    )ÚBytesIOÚStringION)ÚEmptyDataError)Ú	DataFrameÚDatetimeIndex)Úurlopen)Úread_csvÚread_fwfc                  ó˜   — d} t        t        | «      «      }t        g d¢g d¢g d¢g d¢g d¢gg d¢¬«      }t        j                  ||«       y )	Ná  A         B            C            D
201158    360.242940   149.910199   11950.7
201159    444.953632   166.985655   11788.4
201160    364.136849   183.628767   11806.2
201161    413.836124   184.375703   11916.8
201162    502.953953   173.237159   12468.3
©iÆ ç>®ãƒv@çC;§Y ½b@çš™™™YWÇ@©iÇ çµÆ BÏ{@çrÄZ|Šßd@ç33333Ç@)iÈ çØ·“ˆ0Âv@ç»¹øÛôf@çš™™™Ç@)iÉ çi6�Ã`Ýy@çJ@LÂg@çfffffFÇ@©iÊ ç½Ž8dCo@çwžxÎ–§e@çffff&ZÈ@©ÚAÚBÚCÚD©Úcolumns©r
   r   r   ÚtmÚassert_frame_equal©ÚdataÚresultÚexpecteds      úo/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/pandas/tests/io/parser/test_read_fwf.pyÚ
test_basicr.      sN   € ð€Dô ”h˜t“nÓ%€FÜâ5Ú5Ú5Ú5Ú5ð	
ò %ô	€Hô ×Ñ˜& (Õ+ó    c                  ó¤   — d} g d¢}t        t        | «      |¬«      }t        g d¢g d¢g d¢g d¢g d¢gg d	¢¬
«      }t        j                  ||«       y )Ná  A   B     C            D            E
201158    360.242940   149.910199   11950.7
201159    444.953632   166.985655   11788.4
201160    364.136849   183.628767   11806.2
201161    413.836124   184.375703   11916.8
201162    502.953953   173.237159   12468.3
©©r   é   )r4   é   )r5   é   )é   é!   )é"   é+   ©Úcolspecs©éÛ  é:   r   r   r   ©r>   é;   r   r   r   ©r>   é<   r   r   r   ©r>   é=   r   r   r   ©r>   é>   r   r   r   ©r    r!   r"   r#   ÚEr$   r&   ©r*   r<   r+   r,   s       r-   Útest_colspecsrK   6   sU   € ð€Dò =€HÜ”h˜t“n¨xÔ8€Fäâ7Ú7Ú7Ú7Ú7ð	
ò *ô	€Hô ×Ñ˜& (Õ+r/   c                  ó    — d} t        t        | «      g d¢¬«      }t        g d¢g d¢g d¢g d¢g d¢gg d	¢¬
«      }t        j                  ||«       y )Na  A    B    C            D            E
2011 58   360.242940   149.910199   11950.7
2011 59   444.953632   166.985655   11788.4
2011 60   364.136849   183.628767   11806.2
2011 61   413.836124   184.375703   11916.8
2011 62   502.953953   173.237159   12468.3
)é   rM   é   rN   é   )Úwidthsr=   r@   rB   rD   rF   rH   r$   r&   r)   s      r-   Útest_widthsrQ   O   sQ   € ð€Dô ”h˜t“nÒ->Ô?€Fäâ7Ú7Ú7Ú7Ú7ð	
ò *ô	€Hô ×Ñ˜& (Õ+r/   c                  ó¦   — d} g d¢}t        t        | «      |d¬«      }t        g d¢g d¢g d¢g d¢g d	¢gg d
¢¬«      }t        j                  ||«       y )Na  A~~~~B~~~~C~~~~~~~~~~~~D~~~~~~~~~~~~E
201158~~~~360.242940~~~149.910199~~~11950.7
201159~~~~444.953632~~~166.985655~~~11788.4
201160~~~~364.136849~~~183.628767~~~11806.2
201161~~~~413.836124~~~184.375703~~~11916.8
201162~~~~502.953953~~~173.237159~~~12468.3
r2   ú~©r<   Ú	delimiterr=   r@   rB   rD   rF   rH   r$   r&   rJ   s       r-   Útest_non_space_fillerrV   g   sW   € ð€Dò =€HÜ”h˜t“n¨xÀ3ÔG€Fäâ7Ú7Ú7Ú7Ú7ð	
ò *ô	€Hô ×Ñ˜& (Õ+r/   c                  ó¢   — d} g d¢}t        j                  t        d¬«      5  t        t	        | «      |g d¢¬«       d d d «       y # 1 sw Y   y xY w)Nr1   r2   zmust specify only one of©Úmatch)é   é
   r[   rO   ©r<   rP   ©ÚpytestÚraisesÚ
ValueErrorr
   r   )r*   r<   s     r-   Útest_over_specifiedra   †   sH   € ð€Dò =€Hä	�‰”zÐ)CÔ	Dñ KÜ”˜$“¨(º>ÕJ÷K÷ Kñ Kús   ¢AÁAc                  ó–   — d} t        j                  t        d¬«      5  t        t	        | «      d d ¬«       d d d «       y # 1 sw Y   y xY w)Nr1   zMust specify eitherrX   r\   r]   )r*   s    r-   Útest_under_specifiedrc   •   s?   € ð€Dô 
�‰”zÐ)>Ô	?ñ =Ü”˜$“¨$°tÕ<÷=÷ =ñ =ús	   ž?¿Ac                  ó˜   — d} t        t        | «      d¬«      }d}g d¢}t        t        |«      |¬«      }t        j                  ||«       y )NzÈA,B,C,D,E
2011,58,360.242940,149.910199,11950.7
2011,59,444.953632,166.985655,11788.4
2011,60,364.136849,183.628767,11806.2
2011,61,413.836124,184.375703,11916.8
2011,62,502.953953,173.237159,12468.3
Úpython)Úenginer1   r2   r;   )r	   r   r
   r'   r(   )Úcsv_datar,   Úfwf_datar<   r+   s        r-   Útest_read_csv_compatri   ¢   sK   € ð€Hô œ Ó*°8Ô<€Hð€Hò =€HÜ”h˜xÓ(°8Ô<€FÜ×Ñ˜& (Õ+r/   c                  ó¦   — t        dj                  «       «      } t        | ddgd¬«      }t        ddggddg¬«      }t	        j
                  ||«       y )Nu   ×©×œ×•×�
×©×œ×•×�é   Úutf8)rP   Úencodingu   ×©×œu   ×•×�r$   )r   Úencoder
   r   r'   r(   r)   s      r-   Útest_bytes_io_inputro   º   sQ   € ÜÐ'×.Ñ.Ó0Ó1€DÜ�d A q 6°FÔ;€FÜ˜6 6Ð*Ð+°f¸fÐ5EÔF€HÜ×Ñ˜& (Õ+r/   c                  óž   — d} d}t        j                  t        |¬«      5  t        t	        | «      ddid¬«       d d d «       y # 1 sw Y   y xY w)Núiindex,A,B,C,D
foo,2,3,4,5
bar,7,8,9,10
baz,12,13,14,15
qux,12,13,14,15
foo2,12,13,14,15
bar2,12,13,14,15
z/column specifications must be a list or tuple.+rX   Úaé   ú,rT   ©r^   r_   Ú	TypeErrorr
   r   ©r*   Úmsgs     r-   Ú"test_fwf_colspecs_is_list_or_tuplery   Á   sK   € ð€Dð <€Cä	�‰”y¨Ô	,ñ CÜ”˜$“¨3°¨(¸cÕB÷C÷ Cñ Cúó    AÁAc                  óš   — d} d}t        j                  t        |¬«      5  t        t	        | «      dg¬«       d d d «       y # 1 sw Y   y xY w)Nrq   z#Each column specification must be.+rX   )rr   rs   r;   ru   rw   s     r-   Ú8test_fwf_colspecs_is_list_or_tuple_of_two_element_tuplesr|   Ñ   sC   € ð€Dð 0€Cä	�‰”y¨Ô	,ñ 6Ü”˜$“¨8¨*Õ5÷6÷ 6ñ 6ús    AÁA
zcolspecs,exp_data©r   é   )r~   Né{   iÈ  i  )Nr~   )r~   rZ   )r   Ni@â iUø )NNc                 óx   — d}t        |«      }t        t        |«      | d ¬«      }t        j                  ||«       y )Nz123456
456789
)r<   Úheader©r   r
   r   r'   r(   )r<   Úexp_datar*   r,   r+   s        r-   Útest_fwf_colspecs_noner„   á   s7   € ð€Dô ˜Ó"€Hä”h˜t“n¨xÀÔE€FÜ×Ñ˜& (Õ+r/   zinfer_nrows,exp_datars   rk   r~   r5   r[   éb   c                 óx   — d}t        |«      }t        t        |«      | d ¬«      }t        j                  ||«       y )Nz  1  2
123 98
)Úinfer_nrowsr�   r‚   )r‡   rƒ   r*   r,   r+   s        r-   Útest_fwf_colspecs_infer_nrowsrˆ   ö   s7   € ð€Dô ˜Ó"€Hä”h˜t“n°+ÀdÔK€FÜ×Ñ˜& (Õ+r/   c            	      ó0  — g d¢} dgdgt        | «      z  z   }dg| dd  D �cg c]  }d|d›�‘Œ
 c}z   }d}t        g d	¢g d
¢g d¢g d¢g d¢gt        g d¢d¬«      g d¢¬«      }t        t	        |«      dd ||dd¬«      }t        j                  ||«       y c c}w )N)rs   r[   r6   é   rC   éP   éd   é   r5   ÚSSTrs   ÚTÚ03dae    2009164202000   9.5403  9.4105  8.6571  7.8372  6.0612  5.8843  5.5192
2009164203000   9.5435  9.2010  8.6167  7.8176  6.0804  5.8728  5.4869
2009164204000   9.5873  9.1326  8.4694  7.5889  6.0422  5.8526  5.4657
2009164205000   9.5810  9.0896  8.4009  7.4652  6.0322  5.8189  5.4379
2009164210000   9.6034  9.0897  8.3822  7.4905  6.0908  5.7904  5.4039
)g¿œ3¢#@gV-Ò"@g8gDioP!@gEØðôJY@g‘z6«>@gDioð…‰@g2U0*©@)gƒÀÊ¡E#@gôýÔxéf"@gëâ6À;!@g¡Ö4ï8E@gÃdª`TR@g’ËH¿}@gŠ°áé•ò@)g±áé•²,#@g2æ®%äC"@g|a2Uð @g%uš[@g—�z6+@gEGrùi@g"ýöuàÜ@)g¶óýÔx)#@gvqà-"@gÌîÉÃBÍ @g•eˆc]Ü@gŒ¹k	ù @gÇº¸�F@gq¬‹ÛhÀ@)gÐDØð4#@gçŒ(í-"@gùé·¯Ã @gƒÀÊ¡Eö@g>èÙ¬ú\@gšž^)@gèj+ö—�@)z2009-06-13 20:20:00z2009-06-13 20:30:00z2009-06-13 20:40:00z2009-06-13 20:50:00z2009-06-13 21:00:00zM8[us]©Údtype)rŽ   ÚT010ÚT020ÚT030ÚT060ÚT080ÚT100)Úindexr%   r   Tz
%Y%j%H%M%S)Ú	index_colr�   ÚnamesrP   Úparse_datesÚdate_format)Úlenr   r   r
   r   r'   r(   )Útz_listrP   Úzr›   r*   r,   r+   s          r-   Útest_fwf_regressionr¡     sÃ   € ò +€GØˆT�Q�Cœ#˜g›,Ñ&Ñ&€FØˆG¨G°A°B¨KÖ8 q˜˜1˜S˜'’{Ò8Ñ8€Eð€Dô âDÚDÚDÚDÚDð	
ô òð ô	
ò Hô%€Hô( Ü�‹ØØØØØØ ô€Fô ×Ñ˜& (Õ+ùòK 9s   ¡Bc            
      óÞ   — d} t        t        | «      g d¢g d¢d„ d„ d„ d„ dœ¬	«      }t        g d
¢g d¢gg d¢¬«      }|d   j                  t        «      |d<   t        j                  ||«       y )Nz´1421302965.213420    PRI=3 PGN=0xef00      DST=0x17 SRC=0x28    04 154 00 00 00 00 00 127
1421302964.226776    PRI=6 PGN=0xf002               SRC=0x47    243 00 00 255 247 00 00 71))r   é   )é   é   )r8   é%   )é1   é3   )r?   rG   )é?   iè  )ÚtimeÚpriÚpgnÚdstÚsrcr*   c                 ó   — t        | d«      S ©Nr�   ©Úint©Úxs    r-   ú<lambda>z$test_fwf_for_uint8.<locals>.<lambda>A  ó   € œS  B›Z€ r/   c                 ó   — t        | d«      S r°   r±   r³   s    r-   rµ   z$test_fwf_for_uint8.<locals>.<lambda>B  r¶   r/   c                 ó   — t        | d«      S r°   r±   r³   s    r-   rµ   z$test_fwf_for_uint8.<locals>.<lambda>C  r¶   r/   c                 ó6   — t        | j                  d«      «      S )Nú )rž   Úsplitr³   s    r-   rµ   z$test_fwf_for_uint8.<locals>.<lambda>D  s   € œc !§'¡'¨#£,Ó/€ r/   )r¬   r®   r­   r*   )r<   r›   Ú
converters)g¬¨M-×-ÕAr~   i ï  é   é(   r5   )gƒ-×-ÕArZ   ið  NéG   r5   r$   r­   )r
   r   r   ÚastypeÚobjectr'   r(   )r*   Údfr,   s      r-   Útest_fwf_for_uint8rÃ   9  sx   € ð^€Dä	Ü�‹ÚNÚ:á'Ù'Ù'Ù/ñ	
ô	

€Bô â4Ú6ð	
ò =ô€Hð ˜u‘o×,Ñ,¬VÓ4€HˆU�OÜ×Ñ˜"˜hÕ'r/   Úcomment)ú#rS   ú!c                 óÐ   — d}|j                  d| «      }g d¢}t        g d¢dt        j                  dgg«      }t	        t        |«      |d | ¬«      }t        j                  ||«       y )Nz*  1   2.   4  #hello world
  5  NaN  10.0
rÅ   )r}   )r4   é	   )rÈ   r¤   )rs   g       @r4   rM   ç      $@)r<   r�   rÄ   )Úreplacer   ÚnpÚnanr
   r   r'   Úassert_almost_equal)rÄ   r*   r<   r,   r+   s        r-   Útest_fwf_commentrÎ   S  s^   € ð€Dð �<‰<˜˜WÓ%€Dâ(€HÜš+¨¬2¯6©6°4Ð'8Ð9Ó:€Hä”h˜t“n¨xÀÈgÔV€FÜ×Ñ˜6 8Õ,r/   c            	      ó  — d} t        t        | «      d¬«      }t        g d¢g d¢g d¢gg d¢¬«      }t        j                  ||«       d	} t        t        | «      d
¬«      }t        g d¢g d¢t
        j                  t
        j                  t
        j                  t
        j                  gt
        j                  t
        j                  t
        j                  t
        j                  gg d¢gg d¢¬«      }t        j                  ||«       y )Nz°

A         B            C            D

201158    360.242940   149.910199   11950.7
201159    444.953632   166.985655   11788.4


201162    502.953953   173.237159   12468.3

T)Úskip_blank_linesr   r   r   r   r$   z¬A         B            C            D
201158    360.242940   149.910199   11950.7
201159    444.953632   166.985655   11788.4


201162    502.953953   173.237159   12468.3
F)r
   r   r   r'   r(   rË   rÌ   r)   s      r-   Útest_fwf_skip_blank_linesrÑ   b  sÊ   € ð
€Dô ”h˜t“n°tÔ<€FÜâ5Ú5Ú5ð	
ò
 %ô€Hô ×Ñ˜& (Ô+ð€Dô ”h˜t“n°uÔ=€FÜâ5Ú5Ü�V‰V”R—V‘VœRŸV™V¤R§V¡VÐ,Ü�V‰V”R—V‘VœRŸV™V¤R§V¡VÐ,Ú5ð	
ò %ô	€Hô ×Ñ˜& (Õ+r/   Ú	thousands)rt   rÅ   rS   c                 ó²   — d}|j                  d| «      }g d¢}t        g d¢g d¢g«      }t        t        |«      d || ¬«      }t	        j
                  ||«       y )Nz  1 2,334.0    5
10   13     10.
rt   )r}   )r~   é   )é   r�   )rs   g     <¢@rM   )r[   rN   rÉ   )r�   r<   rÒ   )rÊ   r   r
   r   r'   rÍ   )rÒ   r*   r<   r,   r+   s        r-   Útest_fwf_thousandsrÖ   �  sX   € ð€Dð �<‰<˜˜YÓ'€Dâ*€HÜš.ª.Ð9Ó:€HäÜ�‹˜t¨hÀ)ô€Fô ×Ñ˜6 8Õ,r/   r�   TFc                 ó˜   — d}d}t        j                  t        |¬«      5  t        t	        |«      | ¬«       d d d «       y # 1 sw Y   y xY w)NzMyColumn
   a
   b
   a
   bz#Passing a bool to header is invalidrX   ©r�   ru   )r�   r*   rx   s      r-   Útest_bool_header_argrÙ      sA   € ð€Dð 0€CÜ	�‰”y¨Ô	,ñ 0Ü”˜$“¨Õ/÷0÷ 0ñ 0ús    A Á A	c                  óŒ   — d} d}t        t        | «      |¬«      }t        t        | «      «      }t        j                  ||«       y )Nao  index                             A    B    C
2000-01-03T00:00:00  0.980268513777    3  foo
2000-01-04T00:00:00  1.04791624281    -4  bar
2000-01-05T00:00:00  0.498580885705   73  baz
2000-01-06T00:00:00  1.12020151869     1  foo
2000-01-07T00:00:00  0.487094399463    0  bar
2000-01-10T00:00:00  0.836648671666    2  baz
2000-01-11T00:00:00  0.157160753327   34  foo©)r   é   )r7   é#   )é&   r¾   )é*   é-   r;   ©r
   r   r'   r(   ©Útestr<   r,   r+   s       r-   Útest_full_filerä   ¯  s>   € ð1€Dð 7€HÜœ ›°Ô:€Hä”h˜t“nÓ%€FÜ×Ñ˜& (Õ+r/   c                  óŒ   — d} d}t        t        | «      |¬«      }t        t        | «      «      }t        j                  ||«       y )Naj  index                             A    B    C
2000-01-03T00:00:00  0.980268513777    3  foo
2000-01-04T00:00:00  1.04791624281    -4  bar
                     0.498580885705   73  baz
2000-01-06T00:00:00  1.12020151869     1  foo
2000-01-07T00:00:00                    0  bar
2000-01-10T00:00:00  0.836648671666    2  baz
                                      34rÛ   r;   rá   râ   s       r-   Útest_full_file_with_missingræ   À  s>   € ð,€Dð 7€HÜœ ›°Ô:€Hä”h˜t“nÓ%€FÜ×Ñ˜& (Õ+r/   c                  óª   — dj                  d«      } d}t        t        | «      |¬«      }t        t        | «      «      }t        j                  ||«       y )Na«  
Account                 Name  Balance     CreditLimit   AccountCreated
101     Keanu Reeves          9315.45     10000.00           1/17/1998
312     Gerard Butler         90.00       1000.00             8/6/2003
868     Jennifer Love Hewitt  0           17000.00           5/25/1985
761     Jada Pinkett-Smith    49654.87    100000.00          12/5/2006
317     Bill Murray           789.65      5000.00             2/5/2007
ú
©)r   rO   )r5   é   )rŠ   rÞ   )rß   é5   )é8   éF   r;   ©Ústripr
   r   r'   r(   râ   s       r-   Útest_full_file_with_spacesrð   Ñ  óL   € ð÷ 
�Eˆ&ƒMð 	ð ?€HÜœ ›°Ô:€Hä”h˜t“nÓ%€FÜ×Ñ˜& (Õ+r/   c                  óª   — dj                  d«      } d}t        t        | «      |¬«      }t        t        | «      «      }t        j                  ||«       y )Na‰  
Account               Name    Balance     CreditLimit   AccountCreated
101                           10000.00                       1/17/1998
312     Gerard Butler         90.00       1000.00             8/6/2003
868                                                          5/25/1985
761     Jada Pinkett-Smith    49654.87    100000.00          12/5/2006
317     Bill Murray           789.65
rè   ré   r;   rî   râ   s       r-   Ú&test_full_file_with_spaces_and_missingró   â  rñ   r/   c                  óª   — dj                  d«      } d}t        t        | «      |¬«      }t        t        | «      «      }t        j                  ||«       y )NaS  
   Account          Name             Balance     Credit Limit   Account Created
       101                           10000.00                       1/17/1998
       312     Gerard Butler         90.00       1000.00

       761     Jada Pinkett-Smith    49654.87    100000.00          12/5/2006
  317          Bill Murray           789.65
rè   ))rk   r[   )é   r8   )r¦   rà   )r§   rE   )é@   éO   r;   rî   râ   s       r-   Útest_messed_up_datarø   ó  sM   € ð÷ 
�Eˆ&ƒMð 	ð A€HÜœ ›°Ô:€Hä”h˜t“nÓ%€FÜ×Ñ˜& (Õ+r/   c                  ó´   — dj                  d«      } d}d}t        t        | «      ||¬«      }t        t        | «      |¬«      }t        j                  ||«       y )Nzý
col1~~~~~col2  col3++++++++++++++++++col4
~~22.....11.0+++foo~~~~~~~~~~Keanu Reeves
  33+++122.33\\\bar.........Gerard Butler
++44~~~~12.01   baz~~Jennifer Love Hewitt
~~55       11+++foo++++Jada Pinkett-Smith
..66++++++.03~~~bar           Bill Murray
rè   z +~.\)r3   )rO   rN   )rõ   rÜ   )r7   é)   rT   )rU   rî   )rã   rU   r<   r,   r+   s        r-   Útest_multiple_delimitersrû     sU   € ð÷ 
�Eˆ&ƒMð 	ð €IØ4€HÜœ ›°ÀYÔO€Hä”h˜t“n°	Ô:€FÜ×Ñ˜& (Õ+r/   c                  óø   — dj                  d«      } d}d |dœ}t        t        | j                  |«      «      fdddgi|¤Ž}t        t        | j                  |«      «      fi |¤Ž}t	        j
                  ||«       y )Nu-   
×©×œ×•×� ×©×œ×•×�
×•×�   ×©×œ×œ
×©×œ   ×•×�
rè   rl   )r�   rm   r<   r3   )rM   rÈ   )rï   r
   r   rn   r'   r(   )r*   rm   Úkwargsr,   r+   s        r-   Útest_variable_width_unicoderþ     s‡   € ð÷ 
�Eˆ&ƒMð	 	ð
 €HØ¨(Ñ3€FäÜ�—‘˜HÓ%Ó&ñØ28¸&Ð1AðØEKñ€Hô ”g˜dŸk™k¨(Ó3Ó4Ñ?¸Ñ?€FÜ×Ñ˜& (Õ+r/   r’   Úfloat64Úint32©rr   ÚbÚcc                 óú   — d}g d¢}t        t        |«      || ¬«      }t        ddgddgdd	gd
œg d
¢¬«      }| j                  «       D ]  \  }}||   j	                  |«      ||<   Œ t        j                  ||«       y )Nz) a    b    c
1    2    3.2
3    4    5.2
))r   rM   )rM   r[   )r[   N)r<   r’   rs   r~   rk   r4   gš™™™™™	@gÍÌÌÌÌÌ@r  r$   )r
   r   r   ÚitemsrÀ   r'   r(   )r’   r*   r<   r+   r,   ÚcolÚdts          r-   Ú
test_dtyper  %  s‰   € ð€Dò -€HÜ”h˜t“n¨x¸uÔE€FäØ�!ˆf˜A˜q˜6¨¨c¨
Ñ3º_ô€Hð —;‘;“=ò 1‰ˆˆRØ  ™×,Ñ,¨RÓ0ˆ�Šð1ô ×Ñ˜& (Õ+r/   c                  ó®   — dj                  «       } d}t        t        | «      |d¬«      }t        t        | «      |¬«      }t	        j
                  ||«       y )Nz`
Text contained in the file header

DataCol1   DataCol2
     0.0        1.0
   101.6      956.1
rk   ú\s+©ÚskiprowsÚsep©r  ©rï   r	   r   r
   r'   r(   ©r*   r  r,   r+   s       r-   Útest_skiprows_inferencer  8  sN   € ð÷ 
�EƒGð 	ð €Häœ ›°¸vÔF€HÜ”h˜t“n¨xÔ8€FÜ×Ñ˜& (Õ+r/   c                  ó²   — dj                  «       } ddg}t        t        | «      |d¬«      }t        t        | «      |¬«      }t	        j
                  ||«       y )Nzf
To be skipped
Not  To  Be  Skipped
Once more to be skipped
123  34   8      123
456  78   9      456
r   rk   r
  r  r  r  r  s       r-   Ú test_skiprows_by_index_inferencer  H  sR   € ð÷ 
�EƒGð 	ð �1ˆv€Häœ ›°¸vÔF€HÜ”h˜t“n¨xÔ8€FÜ×Ñ˜& (Õ+r/   c                  ó´   — dj                  «       } d}t        j                  t        |¬«      5  t	        t        | «      d¬«       d d d «       y # 1 sw Y   y xY w)Nz%
AA   BBB  C
12   345  6
78   901  2
z(No rows from which to infer column widthrX   r~   r  )rï   r^   r_   r   r
   r   rw   s     r-   Útest_skiprows_inference_emptyr  W  sM   € ð÷ 
�EƒGð	 	ð 5€CÜ	�‰”~¨SÔ	1ñ -Ü”˜$“¨!Õ,÷-÷ -ñ -ús   ®AÁAc                  ó    — d } d}d}t        t        |«      ddg| dgd¬«      }t        t        |«      | ¬«      }t        j                  ||«       y )Nz
 a ,bbb
 cc,dd z
 a bbb
 ccdd r~   r   z
	)rP   r�   r  rU   rØ   ©r
   r   r	   r'   r(   ©r�   rg   rh   r+   r,   s        r-   Útest_whitespace_preservationr  c  s[   € à€Fð€Hð
€Hô Ü�Ó A q 6°&ÀAÀ3ÐRXô€Fô œ Ó*°6Ô:€HÜ×Ñ˜& (Õ+r/   c                  óž   — d } d}d}t        t        |«      ddg| dg¬«      }t        t        |«      | ¬«      }t        j                  ||«       y )Nz
a,bbb
cc,ddz
a 	bbb
cc	dd r~   r   )rP   r�   r  rØ   r  r  s        r-   Útest_default_delimiterr  t  sU   € Ø€Fð	€Hð€Hô ”h˜xÓ(°!°Q°ÀÐRSÐQTÔU€FÜœ Ó*°6Ô:€HÜ×Ñ˜& (Õ+r/   Úinferc                 ó4  — dj                  «       }| }||   }ddgddgdœ}t        t        |«      fi |¤Ž}t        |d¬«      }|j                  d|› �z  }	t        j                  ||	|«       |�	|rd	n||d
<   t        |	fi |¤Ž}
t        j                  |
|«       y )Nz(1111111111
    2222222222
    3333333333rM   ÚoneÚtwo)rP   r›   úutf-8©rm   ztmp.r  Úcompression)rï   r
   r   ÚbytesÚparentr'   Úwrite_to_compressedr(   )Úcompression_onlyr  Úcompression_to_extensionÚ	temp_filer*   r"  Ú	extensionrý   r,   Úpathr+   s              r-   Útest_fwf_compressionr+  ‚  s±   € ðç‘%“'ð 	ð #€KØ(¨Ñ5€Ià˜A˜¨%°¨Ñ8€FÜœ ›Ñ1¨&Ñ1€Hä� Ô(€Dà×Ñ  Y KÐ0Ñ0€DÜ×Ñ˜;¨¨dÔ3àÐÙ+0¡°kˆˆ}Ñä�dÑ%˜fÑ%€FÜ×Ñ˜& (Õ+r/   c                 ó   — d}t        g d¢gg d¢dg¬«      }| }|j                  |d¬«       t        |d«      5 }t        |«      }|j	                  d«       t        j                  ||«       d	d	d	«       y	# 1 sw Y   y	xY w)
zH
    read_fwf supports opening files in binary mode.

    GH 18035.
    zaaa aaa aaa
bba bab b a)ÚbbaÚbabzb a)Úaaazaaa.1zaaa.2r   )r%   r™   r   r!  ÚrbN)r   Ú
write_textÚopenr
   Úseekr'   r(   )r(  r*   Údf_referencer*  ÚfilerÂ   s         r-   Útest_binary_moder6  š  s|   € ð€DäÚ	ÐÒ)BÈ1È#ô€Lð €DØ‡O�O�D 7€OÔ+Ü	ˆd�DÓ	ð 0˜TÜ�d‹^ˆØ�	‰	�!ŒÜ
×Ñ˜b ,Ô/÷0÷ 0ñ 0ús   ¸3A4Á4A=Ú
memory_mapc                 ó¸   — d}|}|j                  dj                  |«      «       t        |dg d¢|| ¬«      }t        g d¢g«      }t	        j
                  ||«       y)zZ
    encoding should be working, even when using a memory-mapped file.

    GH 23254.
    Ú	iso8859_1u
    1 A Ã„ 2
N)rk   rk   rk   rk   )r�   rP   rm   r7  )rs   r    õ   Ã„rk   )Úwrite_bytesrn   r
   r   r'   r(   )r7  r(  rm   r*  rÂ   r4  s         r-   Útest_encoding_mmapr<  ­  s`   € ð €HØ€DØ×Ñ�]×)Ñ)¨(Ó3Ô4Ü	ØØÚØØô
€Bô Ò/Ð0Ó1€LÜ×Ñ˜"˜lÕ+r/   z"colspecs, names, widths, index_col))r   rZ   )rZ   rÕ   )rÕ   é   )r=  NÚabcderZ   r4   c                 óž   — d}d}t        j                  t        |¬«      5  t        t	        |«      | |||¬«       d d d «       y # 1 sw Y   y xY w)Nú(col1  col2  col3  col4
    bab   ba    2z-Length of colspecs must match length of namesrX   ©r<   r›   rP   rš   r]   )r<   r›   rP   rš   r*   rx   s         r-   Útest_len_colspecs_len_namesrB  Â  sM   € ðV€Dà
9€CÜ	�‰”z¨Ô	-ñ 
ÜÜ�T‹NØØØØõ	
÷
÷ 
ñ 
úrz   z,colspecs, names, widths, index_col, expectedÚabcÚcol1Úba)Úcol2Úcol3Úcol4zb   baÚ2)r™   r%   r*   ÚabrF  rr   r  rG  rH  )r   rs   rk   c                 óf   — d}t        t        |«      | |||¬«      }t        j                  ||«       y )Nr@  rA  rá   )r<   r›   rP   rš   r,   r*   r+   s          r-   Ú*test_len_colspecs_len_names_with_index_colrL  ú  s9   € ðV€DäÜ�‹ØØØØô€Fô ×Ñ˜& (Õ+r/   c                  óˆ   — t        t        d«      ddgdd ¬«      } t        ddggddg¬	«      }t        j                  | |«       y )
Nz#
A1K
)rs   rk   )rk   r~   rÅ   )r<   rÄ   r�   rs   ÚKr   r$   r&   )r+   r,   s     r-   Útest_colspecs_with_commentrO  Q  sG   € äÜ�Ó¨°Ð'7ÀÈTô€Fô ˜1˜c˜(˜¨a°¨VÔ4€HÜ×Ñ˜& (Õ+r/   c                  óŠ   — d} t        t        | «      dddg¬«      }t        g d¢g d¢dœ«      }t        j                  ||«       y )Nz&a	b
1	 a
2	 b
3	 c
4	 d
5	 e
6	 f
    r4   rk   )Únrowsr  )rs   r~   rM   rZ   )rr   r  ÚeÚf©rr   r  r&   r)   s      r-   Útest_skip_rows_and_n_rowsrU  Z  sA   € ð€Dô ”h˜t“n¨A¸¸A¸Ô?€FÜš|Ò2FÑGÓH€HÜ×Ñ˜& (Õ+r/   c            	      ó   — d} t        t        | «      dgdgddg d¢¬«      }t        ddd	gi«      t        dd
dgiddg¬«      t        ddgid	g¬«      g}t        |«      D ]  \  }}t	        j
                  |||   «       Œ  y )Nz0
1
2
3
4
5
6
7
8
9
    )r   rk   rr   Trk   )r   rs   rk   rZ   rÈ   )r<   r›   ÚiteratorÚ	chunksizer  r~   r4   rM   rO   )r™   r5   )r
   r   r   Ú	enumerater'   r(   )r*   Údf_iterÚexpected_framesÚir+   s        r-   Útest_skiprows_with_iteratorr]  i  sŸ   € ð
€Dô Ü�‹Ø�ØˆeØØÚ ô€Gô 	�3˜˜A˜�-Ó Ü�3˜˜A˜�-¨¨1 vÔ.Ü�3˜˜�* Q CÔ(ð€Oô
 ˜wÓ'ò :‰	ˆˆ6Ü
×Ñ˜f o°aÑ&8Õ9ñ:r/   c                  óŠ   — d} t        t        | «      dddgddg¬«      }t        dgd	d
œ«      }t        j                  ||«       y )Nz(X   Y   Z
      959.0    345   22.2
    rs   r   rk   rr   r  )r  Úusecolsr›   g     ø�@g3333336@rT  r&   r)   s      r-   Útest_names_and_infer_colspecsr`  ‡  sH   € ð€Dô ”h˜t“n¨q¸1¸a¸&ÈÈcÈ
ÔS€FÜ ˜w¨TÑ2Ó3€HÜ×Ñ˜& (Õ+r/   c                  óŽ   — d} t        t        | «      d dddd¬«      }t        dg d¢g d	¢dœ«      }t        j                  ||«       y )
Nz;0  1    n -0.4100.1
0  2    p  0.2 90.1
0  3    n -0.3140.4)r   rs   r~   )r~   rM   rs   rM   rM   F)Úc0Úc1Úc3)r�   r_  rP   rš   r›   r   )rs   rk   r~   )gš™™™™™Ù¿gš™™™™™É?g333333Ó¿r&   r)   s      r-   Útest_widths_and_usecolsre  ‘  sW   € ð€Dô Ü�‹ØØØØØ ô€Fô àÚÚ#ñ	
ó€Hô ×Ñ˜& (Õ+r/   c                 ó´  — d}t        j                  d| «      5  t        t        |«      |¬«      }d d d «       |dk(  r9t	        j
                  d«      }t        j                  |j                  «       «      }nt        j                  | «      }t        t        j                  ddgd¬«      t        j                  d	d
gd¬«      t        j                  ddgd¬«      t        j                  ddg|¬«      t        j                  t         j                  dgd¬«      t        j                  t         j                  dgd¬«      t        j                  t         j                  dgd¬«      t        j                  d dg|¬«      t        j                  t         j                  t         j                  gd¬«      dœ	«      }|dk(  rut	        j
                  d«      }ddlm} t        |j                  D �ci c]  }| ||j                  ||   d¬«      «      “Œ! c}«      } ||j                  d d g«      «      |d<   t!        j"                  |d¬«       y # 1 sw Y   �ŒxY wc c}w )NzUa  b    c      d  e     f  g    h  i
1  2.5  True  a
3  4.5  False b  True  6  7.5  azmode.string_storage©Údtype_backendÚpyarrowrs   r~   ÚInt64r‘   g      @g      @ÚFloat64TFÚbooleanrr   r  rZ   g      @)	rr   r  r  ÚdrR  rS  ÚgÚhr\  r   )ÚArrowExtensionArray)Úfrom_pandasr\  )Úcheck_column_type)ÚpdÚoption_contextr
   r   r^   ÚimportorskipÚ
ArrowDtypeÚstringÚStringDtyper   ÚSeriesÚNAÚpandas.arraysrp  r%   Úarrayr'   r(   )	Ústring_storagerh  r*   r+   ÚpaÚstring_dtyper,   rp  r  s	            r-   Útest_dtype_backendr€  ¨  sÝ  € ð$€Dô 
×	Ñ	Ð0°.Ó	Añ GÜœ( 4›.¸ÔFˆ÷Gð ˜	Ò!Ü× Ñ  Ó+ˆÜ—}‘} R§Y¡Y£[Ó1‰ä—~‘~ nÓ5ˆää—‘˜A˜q˜6¨Ô1Ü—‘˜C ˜:¨YÔ7Ü—‘˜D %˜=°	Ô:Ü—‘˜C ˜:¨\Ô:Ü—‘œBŸE™E 4˜=°	Ô:Ü—‘œBŸE™E 1˜:¨WÔ5Ü—‘œBŸE™E 3˜<¨yÔ9Ü—‘˜D #˜;¨lÔ;Ü—‘œBŸE™E¤2§5¡5˜>°Ô9ñ
	
ó€Hð ˜	Ò!Ü× Ñ  Ó+ˆÝ5äð $×+Ñ+öàð Ñ(¨¯©°(¸3±-ÈT¨Ó)RÓSÑSòó
ˆñ ,¨B¯H©H°d¸D°\Ó,BÓCˆ�‰ô ×Ñ˜& (¸eÖD÷IGñ Güò6s   ™IÇ($IÉIc                  ó‚   — d} t        j                  t        | ¬«      5  t        dd¬«       d d d «       y # 1 sw Y   y xY w)NzPdtype_backend numpy is invalid, only 'numpy_nullable' and 'pyarrow' are allowed.rX   rã   Únumpyrg  )r^   r_   r`   r
   )rx   s    r-   Útest_invalid_dtype_backendrƒ  Ô  s;   € ð	!ð ô 
�‰”z¨Ô	-ñ 0Ü� wÕ/÷0÷ 0ñ 0ús   ž5µ>c                 ó  — d}| j                  |¬«       t        j                  t        d«      «      }t	        | j
                  «      5 }t        |«      j                  }d d d «       t        j                  |«       y # 1 sw Y   Œ xY w)Nr   )ÚcontentÚABCD)
Úserve_contentrs  ÚIndexÚlistr   Úurlr
   r%   r'   Úassert_index_equal)Ú
httpserverr*   r,   rS  r+   s        r-   Útest_url_urlopenr�  Ý  sr   € ð€Dð ×Ñ TÐÔ*Ü�x‰xœ˜V›Ó%€HÜ	�—‘Ó	 ð % AÜ˜!“×$Ñ$ˆ÷%ô ×Ñ˜& (Õ+÷%ð %ús   ÁA=Á=B)HÚ__doc__Úior   r   r‚  rË   r^   Úpandas.errorsr   Úpandasrs  r   r   Úpandas._testingÚ_testingr'   Úpandas.io.commonr   Úpandas.io.parsersr	   r
   r.   rK   rQ   rV   ra   rc   ri   ro   ry   r|   ÚmarkÚparametrizer„   rˆ   r¡   rÃ   rÎ   rÑ   rÖ   rÙ   rä   ræ   rð   ró   rø   rû   rþ   Ústrr  r  r  r  r  r  r+  r6  r<  r‰  rB  rÌ   rL  rO  rU  r]  r`  re  r€  rƒ  ÚnetworkÚ
single_cpur�  © r/   r-   ú<module>rœ     s§  ðñ÷ó
 Û å (ã ÷õ å $÷ò,ò.,ò2,ò0,ò>Kò
=ò,ò0,òCò 6ð  ‡�×ÑØà
�)Ð	  S˜z¨C°¨:Ð6Ð7Ø
�VÐ	  S˜z¨C°¨:Ð6Ð7Ø
�YÐ	 6¨3 -°&¸#°Ð!?Ð@Ø
˜Ð	 6¨3 -°&¸#°Ð!?Ð@ð	óñ	,óð	,ð ‡�×ÑØð 
ˆa�ˆV�a˜�VÐÐà	ˆq�!ˆf�s˜B�iÐ Ð!ð	óñ	,óð	,ò+,ò\(ð4 ‡�×Ñ˜¢OÓ4ñ-ó 5ð-ò*,ðZ ‡�×Ñ˜¢oÓ6ñ-ó 7ð-ð  ‡�×Ñ˜ D¨% =Ó1ñ0ó 2ð0ò,ò",ò",ò",ò",ò",ò",ð  ‡�×Ñ˜ 2¨Y¸SÀwÑ'OÐ"PÓQñ,ó Rð,ò$,ò ,ò	-ò,ò",ð ‡�×Ñ˜ 4¨ -Ó0ñ,ó 1ð,ò.0ð& ‡�×Ñ˜¨¨e }Ó5ñ,ó 6ð,ð( ‡�×ÑØ(ò 4Ù�‹MØØð		
ð Ù�‹MØˆC�!‰GØð		
ò 4Ù�‹MØØð		
ð Ù�‹MØˆC�!‰GØð		
ð Ù�‹MØˆC�!‰GØð		
ò 4Ù�‹MØØð		
ð?%ó(ñR
óS(ðR
ð ‡�×ÑØ2ò 4Ù�‹KØØÙØ˜t�nÚ'Ú.°¸3ÀÇÁÐ0GÐHôð
	
ò 4Ù�‹JØØ�ˆFÙØ �~¨°Ð'9Ð:Ø˜c˜
Ø˜vÐ&¨¨b¯f©f¨Ð6ôð
	
ò 4Ù�‹IØÚÙØ �~¨°Ð'9¸FÀC¸=ÐIØ˜Ø�h §¡ Ð)ôð
	
ð Ù�‹KØˆC�!‰GØÙØ˜t�nÚ'Ú.°¸3ÀÇÁÐ0GÐHôð
	
ð Ù�‹JØˆC�!‰GØ�ˆFÙØ �~¨°Ð'9Ð:Ø˜c˜
Ø˜vÐ&¨¨b¯f©f¨Ð6ôð
	
ð Ù�‹IØˆC�!‰GÚÙØ �~¨°Ð'9¸FÀC¸=ÐIØ˜Ø�h §¡ Ð)ôð
	
ðqCóFñN,óOFðN,ò ,ò,ò:ò<,ò,ò.)EòX0ð ‡�×ÑØ‡�×Ññ,ó ó ñ,r/   