§
    fŠtjc,  ã                   ó0  — d Z ddlZddlZddlZddlmZ ddlmZ ddlZddlZddl	m
Z
mZ ddlZddlZddlmZmZmZ  ej         ej        e¦  «        d¦  «        Zej        d„ ¦   «         Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d„ Z$d„ Z%d„ Z&dS )z$ Tests for fortran sequential files é    N)Úpath)Úiglob)Úassert_equalÚassert_allclose)ÚFortranFileÚFortranEOFErrorÚFortranFormattingErrorÚdatac                  ó(   — t          j        ¦   «         S )N)Ú	threadingÚLock© ó    úY/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/io/tests/test_fortran.pyÚio_lockr      s   € åŒ>ÑÔÐr   c                 óp  — t          t          j        t          d¦  «        ¦  «        D �]Œ}t	          j        d|t          j        ¦  «        }|st          d|› d�¦  «        ‚t          | 	                    d¦  «        ¦  «        t          | 	                    d¦  «        ¦  «        t          | 	                    d¦  «        ¦  «        f}| 	                    d¦  «         
                    d	d
¦  «        }| 5  t          |dd¦  «        }|                     |¬¦  «                             |d¬¦  «        }|                     ¦   «          d d d ¦  «         n# 1 swxY w Y   t          j        t          j        |¦  «        ¦  «                             |¦  «                             |¦  «        }t'          ||¦  «         �ŒŽd S )Núfortran-*-*x*x*.datú%fortran-([^-]+)-(\d+)x(\d+)x(\d+).datúCouldn't match ú filename to regexé   é   é   é   Úsú<Úrú<u4©ÚdtypeÚF©Úorder)r   r   ÚjoinÚ	DATA_PATHÚreÚsearchÚIÚRuntimeErrorÚintÚgroupÚreplacer   Úread_recordÚreshapeÚcloseÚnpÚarangeÚprodÚastyper   )r   ÚfilenameÚmÚdimsr    Úfr
   Úexpecteds           r   Útest_fortranfiles_readr9      s«  € Ý�$œ)¥IÐ/DÑEÔEÑFÔFð %ñ %ˆÝŒIÐ>ÀÍ"Ì$ÑOÔOˆØð 	OÝÐM°ÐMÐMÐMÑNÔNÐNå�A—G’G˜A‘J”J‘”¥ Q§W¢W¨Q¡Z¤Z¡¤µ#°a·g²g¸a±j´j±/´/ÐBˆà—’˜‘
”
×"Ò" 3¨Ñ,Ô,ˆàð 	ð 	Ý˜H c¨5Ñ1Ô1ˆAØ—=’= u�=Ñ-Ô-×5Ò5°dÀ#Ð5ÑFÔFˆDØ�GŠG‰IŒIˆIð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ
 ”9�RœW T™]œ]Ñ+Ô+×3Ò3°DÑ9Ô9×@Ò@ÀÑGÔGˆÝ�T˜8Ñ$Ô$Ð$Ñ$ð%ð %s   Ã0AEÅE	ÅE	c                 óÎ  — t          j        t          d¦  «        }| 5  t          |dd¦  «        5 }|                     d¦  «        }d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          |d         d         d¦  «         t          |d         d         d	¦  «         t          |d
         d         d¦  «         t          |d         d         ddg¦  «         d S )Nzfortran-mixed.datr   r   z<i4,<f4,<i8,2<f8Úf0r   r   Úf1gffffff@Úf2r   Úf3gffffff@g333333@)r   r$   r%   r   r-   r   r   )r   r4   r7   Úrecords       r   Útest_fortranfiles_mixed_recordr@   /   sQ  € ÝŒy�Ð$7Ñ8Ô8€HØ	ð 7ð 7Ý˜ 3¨Ñ.Ô.ð 	7°!Ø—]’]Ð#5Ñ6Ô6ˆFð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7ð7ð 7ð 7ñ 7ô 7ð 7ð 7ð 7ð 7ð 7ð 7øøøð 7ð 7ð 7ð 7õ �˜”˜a” !Ñ$Ô$Ð$Ý�F˜4”L ”O SÑ)Ô)Ð)Ý�˜”˜a” !Ñ$Ô$Ð$Ý�F˜4”L ”O c¨3 ZÑ0Ô0Ð0Ð0Ð0s4   �A(¯AÁA(ÁA	ÁA(ÁA	ÁA(Á(A,Á/A,c                  ó  — t          t          j        t          d¦  «        ¦  «        D �]V} t	          j        d| t          j        ¦  «        }|st          d| › d�¦  «        ‚t          | 	                    d¦  «        ¦  «        t          | 	                    d¦  «        ¦  «        t          | 	                    d¦  «        ¦  «        f}| 	                    d¦  «         
                    d	d
¦  «        }t          j        t          j        |¦  «        ¦  «                             |¦  «                             |¦  «        }t!          j        ¦   «         }	 t          j        t%          t'          j        ¦   «         ¦  «        |t          j        | ¦  «        ¦  «        }t-          |dd¦  «        }|                     |j        ¦  «         |                     ¦   «          t5          | d¦  «        }t5          |d¦  «        }	t7          |                     ¦   «         |	                     ¦   «         | ¬¦  «         |                     ¦   «          |	                     ¦   «          t;          j        |¦  «         �Œ?# t;          j        |¦  «         w xY wd S )Nr   r   r   r   r   r   r   r   r   r   Úwr   Úrb)Úerr_msg)r   r   r$   r%   r&   r'   r(   r)   r*   r+   r,   r0   r1   r2   r.   r3   ÚtempfileÚmkdtempÚstrr   Úget_native_idÚbasenamer   Úwrite_recordÚTr/   Úopenr   ÚreadÚshutilÚrmtree)
r4   r5   r6   r    r
   ÚtmpdirÚtestFiler7   ÚoriginalfileÚnewfiles
             r   Útest_fortranfiles_writerT   ;   s	  € Ý�$œ)¥IÐ/DÑEÔEÑFÔFð "ñ "ˆÝŒIÐ>ÀÍ"Ì$ÑOÔOˆØð 	OÝÐM°ÐMÐMÐMÑNÔNÐNÝ�A—G’G˜A‘J”J‘”¥ Q§W¢W¨Q¡Z¤Z¡¤µ#°a·g²g¸a±j´j±/´/ÐBˆà—’˜‘
”
×"Ò" 3¨Ñ,Ô,ˆÝŒy�œ ™œÑ'Ô'×/Ò/°Ñ5Ô5×<Ò<¸UÑCÔCˆåÔ!Ñ#Ô#ˆð	"Ý”y¥¥YÔ%<Ñ%>Ô%>Ñ!?Ô!?Ø!'­¬°hÑ(?Ô(?ñAô AˆHå˜H c¨%Ñ0Ô0ˆAØ�NŠN˜4œ6Ñ"Ô"Ð"Ø�GŠG‰IŒIˆIÝ ¨$Ñ/Ô/ˆLÝ˜8 TÑ*Ô*ˆGÝ˜×*Ò*Ñ,Ô,¨g¯lªl©n¬nØ!)ð+ñ +ô +ð +à×ÒÑ Ô Ð Ø�MŠM‰OŒOˆOåŒM˜&Ñ!Ô!Ð!Ñ!ø�FŒM˜&Ñ!Ô!Ð!Ð!øøøð/"ð "s   ÅDI'É'I=c                 ó&  — t          j        t          d¦  «        }| 5  t          |dd¦  «        5 }|                     dd¦  «        }d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «                             dd¦  «                             t
          j	        ¦  «        }t          j
        dd	gt
          j        ¬
¦  «        }t          |d         |j        ¦  «         t          |d         |j        ¦  «         d S )Nzfortran-3x3d-2i.datr   r   z(3,3)<f8z2<i4é	   r   éÿÿÿÿéþÿÿÿr   r   r   )r   r$   r%   r   r-   r0   r1   r.   r3   Úfloat64ÚarrayÚint32r   rK   )r   r4   r7   r?   ÚaxÚbxs         r   Ú"test_fortranfile_read_mixed_recordr^   V   sc  € õ Œy�Ð$9Ñ:Ô:€HØ	ð 7ð 7Ý˜ 3¨Ñ.Ô.ð 	7°!Ø—]’] :¨vÑ6Ô6ˆFð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7ð7ð 7ð 7ñ 7ô 7ð 7ð 7ð 7ð 7ð 7ð 7øøøð 7ð 7ð 7ð 7õ 
Œ�3‰Œ×	Ò	  1Ñ	%Ô	%×	,Ò	,­R¬ZÑ	8Ô	8€BÝ	Œ�2�r�(¥"¤(Ð	+Ñ	+Ô	+€Bå�˜”˜BœDÑ!Ô!Ð!Ý�˜”˜BœDÑ!Ô!Ð!Ð!Ð!s4   �A)¯AÁA)ÁA	ÁA)ÁA	ÁA)Á)A-Á0A-c                 óP  — t          j        t          | ¦  «        t          t          j        ¦   «         ¦  «        d¦  «        }t          j        t          j        |¦  «        d¬¦  «         dt          j	        d¦  «        t          j	        d¦  «        t          j
        d¦  «        ff}dt          j                             d	d
g¬¦  «                             t          j	        ¦  «        t          j                             d	ddg¬¦  «                             t          j	        ¦  «        t          j                             d	dg¬¦  «                             t          j
        ¦  «        ff}||g}|D ]¹\  }}t          |d¦  «        5 } |j        |Ž  d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 } |j        |Ž }d d d ¦  «         n# 1 swxY w Y   t#          t%          |¦  «        t%          |¦  «        ¦  «         t'          ||¦  «        D ]\  }	}
t#          |
|	¦  «         ŒŒºd S )Nútest.datT©Úexist_ok)Úf4rc   Úi4r   r   éd   )Ú4f4z(3,3)f4Ú8i4éÿ   r   )Úsizeé   rB   r   )r   r$   rG   r   rH   ÚosÚmakedirsÚdirnamer0   Úfloat32r[   ÚrandomÚrandintr3   r   rJ   r-   r   ÚlenÚzip)rP   ÚtfÚr1Úr2Úrecordsr    Úar7   ÚbÚaaÚbbs              r   Ú#test_fortranfile_write_mixed_recordr{   n   s_  € Ý	Œ•3�v‘;”;¥¥IÔ$;Ñ$=Ô$=Ñ >Ô >À
Ñ	KÔ	K€BÝ„K•”˜RÑ Ô ¨4Ð0Ñ0Ô0Ð0à
�rœz¨!™}œ}­b¬j¸©m¬m½R¼XÀc¹]¼]ÐKÐ	L€BØ
#ÝŒ9×Ò˜S¨ sÐÑ+Ô+×2Ò2µ2´:Ñ>Ô>ÝŒ9×Ò˜S¨¨1 vÐÑ.Ô.×5Ò5µb´jÑAÔAÝŒ9×Ò˜S¨ sÐÑ+Ô+×2Ò2µ2´8Ñ<Ô<ð>ð
?€Bð �2ˆh€Gàð 
!ð 
!‰ˆˆqÝ˜˜SÑ!Ô!ð 	 QØˆAŒN˜AÐÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ ˜˜SÑ!Ô!ð 	& QØ�”˜uÐ%ˆAð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&õ 	•S˜‘V”V�S ™VœVÑ$Ô$Ð$å˜!˜Q‘i”ið 	!ð 	!‰FˆB�Ý˜˜RÑ Ô Ð Ð ð	!ð
!ð 
!s$   ÆFÆF	ÆF	Æ3G
Ç
G	ÇG	c                 ó®  — t          |                     ¦   «         d¦  «        5 }|                     d¦  «         t          j        |t          j        | |z  |z  ¬¦  «        }|                     d¦  «         ddd¦  «         n# 1 swxY w Y   |j        | |z  |z  k    r t          d| |z  |z  › d|j        › �¦  «        ‚|                     | ||fd¬¦  «        S )	aj  
    Read a Fortran-style unformatted binary file written with a single write() call,
    assuming it wraps the data with 4-byte record markers.

    Returns:
        np.ndarray of shape (m, n, k) with dtype float64

    Reference:
        Fortran implementation:
        https://github.com/scipy/scipy/blob/maintenance/1.15.x/scipy/io/_test_fortran.f#L1-L9
    rC   r   ©r    ÚcountNú	Expected ú elements, got r!   r"   )	rL   ÚstriprM   r0   ÚfromfilerY   ri   Ú
ValueErrorr.   ©r5   ÚnÚkr4   r7   r
   s         r   Úread_unformatted_doubler‡   …   s
  € õ 
ˆh�nŠnÑÔ Ñ	%Ô	%ð ¨Ø	�Šˆq‰	Œ	ˆ	ÝŒ{˜1¥B¤J°a¸!±e¸a±iÐ@Ñ@Ô@ˆØ	�Šˆq‰	Œ	ˆ	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð
 „y�A˜‘E˜A‘IÒÐÝÐF Q q¡S¨¡UÐFÐF¸4¼9ÐFÐFÑGÔGÐGà�<Š<˜˜A˜q˜	¨ˆ<Ñ-Ô-Ð-ó   £ABÂBÂBc                 óŽ  — t          |                     ¦   «         d¦  «        5 }|                     d¦  «         t          j        |t          j        | |z  ¬¦  «        }t          j        |t          j        |¬¦  «        }|                     d¦  «         ddd¦  «         n# 1 swxY w Y   |                     | |fd¬¦  «        }||fS )aú  
    Read a Fortran unformatted binary file that contains a mix of:
    - a double precision array a(m, n)
    - an integer array b(k)

    Assumes a single write(10) a, b was used and file is wrapped
    with Fortran record markers.

    Returns:
        a: np.ndarray of shape (m, n) with dtype float64
        b: np.ndarray of shape (k,) with dtype int32

    Reference:
        Fortran implementation:
        https://github.com/scipy/scipy/blob/maintenance/1.15.x/scipy/io/_test_fortran.f#L21-L30
    rC   r   r}   Nr!   r"   )rL   r�   rM   r0   r‚   rY   r[   r.   )r5   r…   r†   r4   r7   Úa_flatrx   rw   s           r   Úread_unformatted_mixedr‹   ›   sê   € õ" 
ˆh�nŠnÑÔ Ñ	%Ô	%ð 	¨Ø	�Šˆq‰	Œ	ˆ	õ ”˜Q¥b¤j¸¸A¹Ð>Ñ>Ô>ˆõ ŒK˜¥¤°Ð3Ñ3Ô3ˆà	�Šˆq‰	Œ	ˆ	ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	�Š˜˜1�v SˆÑ)Ô)€Aàˆaˆ4€Ks   £A0BÂB#Â&B#c                 ó®  — t          |                     ¦   «         d¦  «        5 }|                     d¦  «         t          j        |t          j        | |z  |z  ¬¦  «        }|                     d¦  «         ddd¦  «         n# 1 swxY w Y   |j        | |z  |z  k    r t          d| |z  |z  › d|j        › �¦  «        ‚|                     | ||fd¬¦  «        S )	aœ  
    Read a Fortran unformatted binary file
    containing a 3D integer array (m, n, k).
    Assumes the array is written with a single
    write(10) a and wrapped with record markers.

    Returns:
        np.ndarray: 3D array of shape (m, n, k) with dtype int32

    Reference:
        Fortran implementation:
        https://github.com/scipy/scipy/blob/maintenance/1.15.x/scipy/io/_test_fortran.f#L11-L19
    rC   r   r}   Nr   r€   r!   r"   )	rL   r�   rM   r0   r‚   r[   ri   rƒ   r.   r„   s         r   Úread_unformatted_intr�   ¼   s  € õ 
ˆh�nŠnÑÔ Ñ	%Ô	%ð ¨Ø	�Šˆq‰	Œ	ˆ	õ Œ{˜1¥B¤H°A¸±E¸A±IÐ>Ñ>Ô>ˆà	�Šˆq‰	Œ	ˆ	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð „y�A˜‘E˜A‘IÒÐÝÐF Q q¡S¨¡UÐFÐF¸4¼9ÐFÐFÑGÔGÐGà�<Š<˜˜A˜q˜	¨ˆ<Ñ-Ô-Ð-rˆ   c                 óž  — t          j        t          | ¦  «        t          t          j        ¦   «         ¦  «        d¦  «        }t          j        t          j        |¦  «        d¬¦  «         t          j	         
                    d¦  «        }d\  }}}|                     |||¦  «        }t          |d¦  «        5 }|                     |j        ¦  «         d d d ¦  «         n# 1 swxY w Y   |5  t          ||||¦  «        }	d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }|                     d¦  «        j        }
d d d ¦  «         n# 1 swxY w Y   t#          |	|¦  «         t#          |
|¦  «         d\  }}}|                     |||¦  «                             t          j        ¦  «        }t          |d¦  «        5 }|                     |j        ¦  «         d d d ¦  «         n# 1 swxY w Y   |5  t)          ||||¦  «        }	d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }|                     d	¦  «        j        }
d d d ¦  «         n# 1 swxY w Y   t#          |	|¦  «         t#          |
|¦  «         d\  }}}|                     ||¦  «        }|                     |¦  «                             t          j        ¦  «        }t          |d¦  «        5 }|                     |j        |j        ¦  «         d d d ¦  «         n# 1 swxY w Y   |5  t-          ||||¦  «        \  }	}d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }|                     d
d¦  «        \  }
}|
j        }
d d d ¦  «         n# 1 swxY w Y   t#          |	|¦  «         t#          |
|¦  «         t#          ||¦  «         t#          ||¦  «         d S )Nr`   Tra   r   )é   r   r   rB   r   z	(2,3,5)f8z	(2,3,5)i4z(3,5)f8Ú2i4)r   r$   rG   r   rH   rk   rl   rm   r0   ro   ÚRandomStateÚrandnr   rJ   rK   r‡   r-   r   r3   r[   r�   Úintcr‹   )rP   r   r4   Úrngr5   r…   r†   rw   r7   Úa2Úa3rx   Úb2Úb3s                 r   Útest_fortran_roundtripr™   ×   s   € ÝŒy�˜V™œ¥c­)Ô*AÑ*CÔ*CÑ&DÔ&DØ#ñ%ô %€Hå„K•”˜XÑ&Ô&°Ð6Ñ6Ô6Ð6å
Œ)×
Ò
 Ñ
"Ô
"€Cð �G€A€qˆ!Ø�	Š	�!�Q˜ÑÔ€AÝ	�X˜sÑ	#Ô	#ð  qØ	�Š�q”sÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à	ð 8ð 8Ý$ Q¨¨1¨hÑ7Ô7ˆð8ð 8ð 8ñ 8ô 8ð 8ð 8ð 8ð 8ð 8ð 8øøøð 8ð 8ð 8ð 8õ 
�X˜sÑ	#Ô	#ð * qØ�]Š]˜;Ñ'Ô'Ô)ˆð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *å��QÑÔÐÝ��QÑÔÐð �G€A€qˆ!Ø�	Š	�!�Q˜ÑÔ×!Ò!¥"¤(Ñ+Ô+€AÝ	�X˜sÑ	#Ô	#ð  qØ	�Š�q”sÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à	ð 5ð 5Ý! ! Q¨¨8Ñ4Ô4ˆð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5å	�X˜sÑ	#Ô	#ð * qØ�]Š]˜;Ñ'Ô'Ô)ˆð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *å��QÑÔÐÝ��QÑÔÐð �G€A€qˆ!Ø�	Š	�!�Q‰Œ€AØ�	Š	�!‰Œ×Ò�BœGÑ$Ô$€AÝ	�X˜sÑ	#Ô	#ð ! qØ	�Š�q”s˜AœCÑ Ô Ð ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !à	ð ;ð ;Ý'¨¨1¨a°Ñ:Ô:‰ˆˆBð;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;å	�X˜sÑ	#Ô	#ð  qØ—’˜y¨%Ñ0Ô0‰ˆˆBØŒTˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ ��QÑÔÐÝ��QÑÔÐÝ��QÑÔÐÝ��QÑÔÐÐÐs¢   Â6CÃC!Ã$C!Ã*D	Ä	DÄDÄ$EÅEÅEÇ G'Ç'G+Ç.G+Ç4HÈHÈHÈ.IÉIÉIË!LÌLÌLÌL:Ì:L>ÍL>Í!NÎNÎ	Nc                 ó~  — t          j        t          | ¦  «        t          t          j        ¦   «         ¦  «        d¦  «        }t          j        t          j        |¦  «        d¬¦  «         t          j	         
                    d¦  «        }t          |d¦  «        5 }|                     |                     d¦  «        ¦  «         |                     |                     d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }t          |                     ¦   «         ¦  «        dk    sJ ‚t          |                     ¦   «         ¦  «        dk    sJ ‚t!          j        t$          ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )	NÚscratchTra   r   rB   r�   r   r   )r   r$   rG   r   rH   rk   rl   rm   r0   ro   r‘   r   rJ   r’   rq   Ú
read_realsÚpytestÚraisesr   ©rP   r4   r”   r7   s       r   Útest_fortran_eof_okr      s&  € ÝŒy�˜V™œ¥c­)Ô*AÑ*CÔ*CÑ&DÔ&DØ"ñ$ô $€Hå„K•”˜XÑ&Ô&°Ð6Ñ6Ô6Ð6Ý
Œ)×
Ò
 Ñ
"Ô
"€CÝ	�X˜sÑ	#Ô	#ð % qØ	�Š�s—y’y ‘|”|Ñ$Ô$Ð$Ø	�Š�s—y’y ‘|”|Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ 
�X˜sÑ	#Ô	#ð  qÝ�1—<’<‘>”>Ñ"Ô" aÒ'Ð'Ð'Ð'Ý�1—<’<‘>”>Ñ"Ô" aÒ'Ð'Ð'Ð'ÝŒ]�?Ñ+Ô+ð 	ð 	Ø�LŠL‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð sJ   ÂAC6Ã6C:Ã=C:ÄA(F2Å9FÆF2ÆF	ÆF2Æ!F	Æ"F2Æ2F6Æ9F6c                 óø  — t          j        t          | ¦  «        t          t          j        ¦   «         ¦  «        d¦  «        }t          j        t          j        |¦  «        d¬¦  «         t          j	         
                    d¦  «        }t          |d¦  «        5 }|                     |                     d¦  «        ¦  «         |                     |                     d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }|                     d	¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d
¦  «        5 }t!          |                     ¦   «         ¦  «        dk    sJ ‚t!          |                     ¦   «         ¦  «        dk    sJ ‚t%          j        t(          ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr›   Tra   r   rB   r�   r   Úabó   ÿr   )r   r$   rG   r   rH   rk   rl   rm   r0   ro   r‘   r   rJ   r’   rL   Úwriterq   rœ   r�   rž   r	   rŸ   s       r   Útest_fortran_eof_broken_sizer¥     s›  € ÝŒy�˜V™œ¥c­)Ô*AÑ*CÔ*CÑ&DÔ&DØ"ñ$ô $€Hå„K•”˜XÑ&Ô&°Ð6Ñ6Ô6Ð6Ý
Œ)×
Ò
 Ñ
"Ô
"€CÝ	�X˜sÑ	#Ô	#ð % qØ	�Š�s—y’y ‘|”|Ñ$Ô$Ð$Ø	�Š�s—y’y ‘|”|Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ 
ˆh˜Ñ	Ô	ð  Ø	�Š�ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å	�X˜sÑ	#Ô	#ð  qÝ�1—<’<‘>”>Ñ"Ô" aÒ'Ð'Ð'Ð'Ý�1—<’<‘>”>Ñ"Ô" aÒ'Ð'Ð'Ð'ÝŒ]Õ1Ñ2Ô2ð 	ð 	Ø�LŠL‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s\   ÂAC6Ã6C:Ã=C:ÄD3Ä3D7Ä:D7ÅA(G/Æ6GÇG/ÇG	ÇG/ÇG	ÇG/Ç/G3Ç6G3c                 ó\  — t          j        t          | ¦  «        t          t          j        ¦   «         ¦  «        d¦  «        }t          j        t          j        |¦  «        d¬¦  «         t          j	         
                    d¦  «        }t          |d¦  «        5 }|                     |                     d¦  «        ¦  «         |                     |                     d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }|                     d	¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d
¦  «        5 }t!          j        t$          ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr›   Tra   r   rB   r�   r   zw+bs   ÿÿr   )r   r$   rG   r   rH   rk   rl   rm   r0   ro   r‘   r   rJ   r’   rL   r¤   r�   rž   r	   rœ   rŸ   s       r   Útest_fortran_bogus_sizer§   (  sY  € ÝŒy�˜V™œ¥c­)Ô*AÑ*CÔ*CÑ&DÔ&DØ"ñ$ô $€Hå„K•”˜XÑ&Ô&°Ð6Ñ6Ô6Ð6Ý
Œ)×
Ò
 Ñ
"Ô
"€CÝ	�X˜sÑ	#Ô	#ð % qØ	�Š�s—y’y ‘|”|Ñ$Ô$Ð$Ø	�Š�s—y’y ‘|”|Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ 
ˆh˜Ñ	Ô	ð  !Ø	�Š�ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å	�X˜sÑ	#Ô	#ð  qÝŒ]Õ1Ñ2Ô2ð 	ð 	Ø�LŠL‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s[   ÂAC6Ã6C:Ã=C:ÄD3Ä3D7Ä:D7ÅF!Å(F	Å=F!Æ	F	ÆF!ÆF	ÆF!Æ!F%Æ(F%c                 óÔ  — t          j        t          | ¦  «        t          t          j        ¦   «         ¦  «        d¦  «        }t          j        t          j        |¦  «        d¬¦  «         t          j	         
                    d¦  «        }t          |d¦  «        5 }|                     |                     d¦  «        ¦  «         |                     |                     d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }|                     t          j        |¦  «        d	z
  ¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d
¦  «        5 }t#          |                     ¦   «         ¦  «        dk    sJ ‚t'          j        t*          ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr›   Tra   r   rB   r�   r   r¢   é   r   )r   r$   rG   r   rH   rk   rl   rm   r0   ro   r‘   r   rJ   r’   rL   ÚtruncateÚgetsizerq   rœ   r�   rž   r	   rŸ   s       r   Útest_fortran_eof_broken_recordr¬   7  s‰  € ÝŒy�˜V™œ¥c­)Ô*AÑ*CÔ*CÑ&DÔ&DØ"ñ$ô $€Hå„K•”˜XÑ&Ô&°Ð6Ñ6Ô6Ð6Ý
Œ)×
Ò
 Ñ
"Ô
"€CÝ	�X˜sÑ	#Ô	#ð % qØ	�Š�s—y’y ‘|”|Ñ$Ô$Ð$Ø	�Š�s—y’y ‘|”|Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ 
ˆh˜Ñ	Ô	ð . Ø	�
Š
•4”< Ñ)Ô)¨"Ñ,Ñ-Ô-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .å	�X˜sÑ	#Ô	#ð  qÝ�1—<’<‘>”>Ñ"Ô" aÒ'Ð'Ð'Ð'ÝŒ]Õ1Ñ2Ô2ð 	ð 	Ø�LŠL‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s\   ÂAC6Ã6C:Ã=C:Ä+EÅEÅEÅ#AGÆ$GÆ9GÇG		Ç	GÇG		ÇGÇG!Ç$G!c                 óZ  — t          j        t          | ¦  «        t          t          j        ¦   «         ¦  «        d¦  «        }t          j        t          j        |¦  «        d¬¦  «         d\  }}}t          j	        dt          j
        ||ffg¦  «        }t          j        ||¬¦  «        }t          |d¦  «        5 }|                     |d         ¦  «         |                     |¦  «         |                     |¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d	¦  «        5 }|                     t          j        |¦  «        d
z
  ¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }t#          |                     |¬¦  «        ¦  «        dk    sJ ‚t#          |                     |¬¦  «        ¦  «        |k    sJ ‚t'          j        t*          ¦  «        5  |                     |¬¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr›   Tra   )r   r�   é   Úfieldr   rB   r   r¢   r©   r   r   )r   r$   rG   r   rH   rk   rl   rm   r0   r    rY   Úzerosr   rJ   rL   rª   r«   rq   r-   r�   rž   r	   )rP   r4   r…   r5   ÚqÚdtrw   r7   s           r   Ú!test_fortran_eof_multidimensionalr³   G  sè  € ÝŒy�˜V™œ¥c­)Ô*AÑ*CÔ*CÑ&DÔ&DØ"ñ$ô $€Hå„K•”˜XÑ&Ô&°Ð6Ñ6Ô6Ð6Ø�G€A€qˆ!Ý	Œ�G�RœZ¨!¨Q¨Ð0Ð1Ñ	2Ô	2€BÝ
Œ�˜"ÐÑÔ€AÝ	�X˜sÑ	#Ô	#ð  qØ	�Š�q˜”tÑÔÐØ	�Š�qÑÔÐØ	�Š�qÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
ˆh˜Ñ	Ô	ð . Ø	�
Š
•4”< Ñ)Ô)¨"Ñ,Ñ-Ô-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .å	�X˜sÑ	#Ô	#ð $ qÝ�1—=’= r�=Ñ*Ô*Ñ+Ô+¨qÒ0Ð0Ð0Ð0Ý�1—=’= r�=Ñ*Ô*Ñ+Ô+¨qÒ0Ð0Ð0Ð0ÝŒ]Õ1Ñ2Ô2ð 	$ð 	$Ø�MŠM ˆMÑ#Ô#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $s\   Â:ADÄDÄDÄ'+EÅE"Å%E"Å9A,H Ç%HÇ<H ÈH	ÈH ÈH	ÈH È H$È'H$)'Ú__doc__rE   rN   rk   r   Úglobr   r   r&   Únumpy.testingr   r   Únumpyr0   r�   Úscipy.ior   r   r	   r$   rm   Ú__file__r%   Úfixturer   r9   r@   rT   r^   r{   r‡   r‹   r�   r™   r    r¥   r§   r¬   r³   r   r   r   ú<module>r»      sÚ  ðØ *Ð *à €€€Ø €€€Ø 	€	€	€	Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø 	€	€	€	à 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø Ð Ð Ð Ø €€€ð.ð .ð .ð .ð .ð .ð .ð .ð .ð .ð
 ˆDŒI�l�d”l 8Ñ,Ô,¨fÑ5Ô5€	ð „ðð ñ „ðð%ð %ð %ð&	1ð 	1ð 	1ð"ð "ð "ð6"ð "ð "ð0!ð !ð !ð..ð .ð .ð,ð ð ðB.ð .ð .ð6.ð .ð .ðbð ð ðð ð ð"ð ð ðð ð ð $ð $ð $ð $ð $r   