Ë
    0Ò^jc,  ã                   ó:  — 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&y)z$ Tests for fortran sequential files é    N)Úpath)Úiglob)Úassert_equalÚassert_allclose)ÚFortranFileÚFortranEOFErrorÚFortranFormattingErrorÚdatac                  ó*   — t        j                  «       S )N)Ú	threadingÚLock© ó    úf/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/scipy/io/tests/test_fortran.pyÚio_lockr      s   € ä�>‰>ÓÐr   c                 óò  — t        t        j                  t        d«      «      D �]D  }t	        j
                  d|t        j                  «      }|st        d|› d�«      ‚t        |j                  d«      «      t        |j                  d«      «      t        |j                  d«      «      f}|j                  d«      j                  d	d
«      }| 5  t        |dd«      }|j                  |¬«      j                  |d¬«      }|j                  «        d d d «       t        j                   t        j"                  |«      «      j                  |«      j%                  |«      }t'        |«       �ŒG y # 1 sw Y   Œ_xY w)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ÓFó %ˆÜ�I‰IÐ>ÀÌ"Ï$É$ÓOˆÙÜ °°
Ð:LÐMÓNÐNä�A—G‘G˜A“J“¤ Q§W¡W¨Q£Z£´#°a·g±g¸a³j³/ÐBˆà—‘˜“
×"Ñ" 3¨Ó,ˆàñ 	Ü˜H c¨5Ó1ˆAØ—=‘= u�=Ó-×5Ñ5°dÀ#Ð5ÓFˆDØ�G‰GŒI÷	ô
 —9‘9œRŸW™W T›]Ó+×3Ñ3°DÓ9×@Ñ@ÀÓGˆÜ�T˜8Ö$ñ%÷	ð 	ús   ÃAE-Å-E6	c                 ó`  — t        j                  t        d«      }| 5  t        |dd«      5 }|j	                  d«      }d d d «       d d d «       t        d   d   d«       t        |d   d   d	«       t        |d
   d   d«       t        |d   d   ddg«       y # 1 sw Y   Œ\xY w# 1 sw Y   Œ`xY w)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@   /   s«   € Ü�y‰yœÐ$7Ó8€HØ	ñ 7Ü˜ 3¨Ó.ð 	7°!Ø—]‘]Ð#5Ó6ˆF÷	7÷7ô �˜‘˜a‘ !Ô$Ü�F˜4‘L ‘O SÔ)Ü�˜‘˜a‘ !Ô$Ü�F˜4‘L ‘O c¨3 ZÕ0÷	7ð 	7ú÷7ð 7ús!   �B$«B½B$ÂB!	ÂB$Â$B-c                  ór  — t        t        j                  t        d«      «      D �]ö  } t	        j
                  d| t        j                  «      }|st        d| › d�«      ‚t        |j                  d«      «      t        |j                  d«      «      t        |j                  d«      «      f}|j                  d«      j                  d	d
«      }t        j                  t        j                  |«      «      j                  |«      j                  |«      }t!        j"                  «       }	 t        j                  t%        t'        j(                  «       «      |t        j*                  | «      «      }t-        |dd«      }|j/                  |j0                  «       |j3                  «        t5        | d«      }t5        |d«      }	t7        |j9                  «       |	j9                  «       | ¬«       |j3                  «        |	j3                  «        t;        j<                  |«       �Œù y # t;        j<                  |«       w xY w)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ÓFó "ˆÜ�I‰IÐ>ÀÌ"Ï$É$ÓOˆÙÜ °°
Ð:LÐMÓNÐNÜ�A—G‘G˜A“J“¤ Q§W¡W¨Q£Z£´#°a·g±g¸a³j³/ÐBˆà—‘˜“
×"Ñ" 3¨Ó,ˆÜ�y‰yœŸ™ ›Ó'×/Ñ/°Ó5×<Ñ<¸UÓCˆä×!Ñ!Ó#ˆð	"Ü—y‘y¤¤Y×%<Ñ%<Ó%>Ó!?Ø!'¬¯©°hÓ(?óAˆHä˜H c¨%Ó0ˆAØ�N‰N˜4Ÿ6™6Ô"Ø�G‰GŒIÜ ¨$Ó/ˆLÜ˜8 TÓ*ˆGÜ˜×*Ñ*Ó,¨g¯l©l«nØ!)õ+à×ÑÔ Ø�M‰MŒOä�M‰M˜&Ö!ñ/"øô. �M‰M˜&Õ!ús   Ä'CHÈH6c                 ó  — t        j                  t        d«      }| 5  t        |dd«      5 }|j	                  dd«      }d d d «       d d d «       t        j                  d«      j                  dd«      j                  t
        j                  «      }t        j                  dd	gt
        j                  ¬
«      }t        d   |j                  «       t        |d   |j                  «       y # 1 sw Y   Œ­xY w# 1 sw Y   Œ±xY w)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   sÇ   € ô �y‰yœÐ$9Ó:€HØ	ñ 7Ü˜ 3¨Ó.ð 	7°!Ø—]‘] :¨vÓ6ˆF÷	7÷7ô 
�‰�3‹×	Ñ	  1Ó	%×	,Ñ	,¬R¯Z©ZÓ	8€BÜ	�‰�2�r�(¤"§(¡(Ô	+€Bä�˜‘˜BŸD™DÔ!Ü�˜‘˜BŸD™DÕ!÷	7ð 	7ú÷7ð 7ús!   �C6«C*¾C6Ã*C3	Ã/C6Ã6C?c                 ó$  — 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                  j                  d	d
g¬«      j                  t        j                  «      t        j                  j                  d	ddg¬«      j                  t        j                  «      t        j                  j                  d	dg¬«      j                  t        j                  «      ff}||g}|D ]‹  \  }}t        |d«      5 } |j                  |Ž  d d d «       t        |d«      5 } |j                   |Ž }d d d «       t#        t%        |«      t%        «      «       t'        ||«      D ]  \  }	}
t#        |
|	«       Œ Œ� y # 1 sw Y   ŒnxY w# 1 sw Y   ŒVxY w)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€BÜ‡K�K”—‘˜RÓ ¨4Õ0à
œrŸz™z¨!›}¬b¯j©j¸«m¼R¿X¹XÀc»]ÐKÐ	L€BØ
#Ü�9‰9×Ñ˜S¨ sÐÓ+×2Ñ2´2·:±:Ó>Ü�9‰9×Ñ˜S¨¨1 vÐÓ.×5Ñ5´b·j±jÓAÜ�9‰9×Ñ˜S¨ sÐÓ+×2Ñ2´2·8±8Ó<ð>ð
?€Bð �2ˆh€Gàò 
!‰ˆˆqÜ˜˜SÓ!ð 	 QØˆA�N‰N˜AÑ÷	ô ˜˜SÓ!ð 	& QØ�—‘˜uÐ%ˆA÷	&ô 	”S˜“VœS ›VÔ$ä˜!˜Q“iò 	!‰FˆB�Ü˜˜RÕ ñ	!ñ
!÷	ð 	ú÷	&ð 	&ús   Å=G:Æ!HÇ:H	ÈH	c                 ó”  — t        |j                  «       d«      5 }|j                  d«       t        j                  |t        j
                  | |z  |z  ¬«      }|j                  d«       ddd«       j                  | |z  |z  k7  r!t        d| |z  |z  › d|j                  › �«      ‚|j                  | ||fd¬«      S # 1 sw Y   ŒUxY w)	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¡J°a¸!±e¸a±iÔ@ˆØ	�‰ˆqŒ	÷ð
 ‡y�y�A˜‘E˜A‘IÒÜ˜9 Q q¡S¨¡U G¨?¸4¿9¹9¸+ÐFÓGÐGà�<‰<˜˜A˜q˜	¨ˆ<Ó-Ð-÷ð úó   ›AB>Â>Cc                 ót  — t        |j                  «       d«      5 }|j                  d«       t        j                  |t        j
                  | |z  ¬«      }t        j                  |t        j                  |¬«      }|j                  d«       ddd«       j                  | |fd¬«      }|fS # 1 sw Y   Œ"xY w)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¡j¸¸A¹Ô>ˆô �K‰K˜¤§¡°Ô3ˆà	�‰ˆqŒ	÷	ð 	�‰˜˜1�v SˆÓ)€Aàˆaˆ4€K÷	ð 	ús   ›A2B.Â.B7c                 ó”  — t        |j                  «       d«      5 }|j                  d«       t        j                  |t        j
                  | |z  |z  ¬«      }|j                  d«       ddd«       j                  | |z  |z  k7  r!t        d| |z  |z  › d|j                  › �«      ‚|j                  | ||fd¬«      S # 1 sw Y   ŒUxY w)	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¡H°A¸±E¸A±IÔ>ˆà	�‰ˆqŒ	÷ð ‡y�y�A˜‘E˜A‘IÒÜ˜9 Q q¡S¨¡U G¨?¸4¿9¹9¸+ÐFÓGÐGà�<‰<˜˜A˜q˜	¨ˆ<Ó-Ð-÷ð úrˆ   c                 óØ  — t        j                  t        | «      t        t        j                  «       «      d«      }t        j                  t        j                  |«      d¬«       t        j                  j                  d«      }d\  }}}|j                  |||«      }t        |d«      5 }|j                  |j                  «       d d d «       |5  t        ||||«      }	d d d «       t        |d«      5 }|j!                  d«      j                  }
d d d «       t#        	|«       t#        
|«       d\  }}}|j                  |||«      j%                  t        j&                  «      }t        |d«      5 }|j                  |j                  «       d d d «       |5  t)        ||||«      }	d d d «       t        |d«      5 }|j!                  d	«      j                  }
d d d «       t#        |	|«       t#        |
|«       d\  }}}|j                  ||«      }|j                  |«      j%                  t        j*                  «      }t        |d«      5 }|j                  |j                  |j                  «       d d d «       |5  t-        ||||«      \  }	}d d d «       t        |d«      5 }|j!                  d
d«      \  }
}|
j                  }
d d d «       t#        |	|«       t#        |
|«       t#        |«       t#        |«       y # 1 sw Y   �Œ6x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   �ŒŠxY w# 1 sw Y   �ŒgxY w# 1 sw Y   ŒÚxY w# 1 sw Y   ŒÊxY w# 1 sw Y   Œ xY w)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‰yœ˜V›¤c¬)×*AÑ*AÓ*CÓ&DØ#ó%€Hä‡K�K”—‘˜XÓ&°Õ6ä
�)‰)×
Ñ
 Ó
"€Cð �G€A€qˆ!Ø�	‰	�!�Q˜Ó€AÜ	�X˜sÓ	#ð  qØ	�‰�q—s‘sÔ÷à	ñ 8Ü$ Q¨¨1¨hÓ7ˆ÷8ô 
�X˜sÓ	#ð * qØ�]‰]˜;Ó'×)Ñ)ˆ÷*ä��QÔÜ��QÔð �G€A€qˆ!Ø�	‰	�!�Q˜Ó×!Ñ!¤"§(¡(Ó+€AÜ	�X˜sÓ	#ð  qØ	�‰�q—s‘sÔ÷à	ñ 5Ü! ! Q¨¨8Ó4ˆ÷5ä	�X˜sÓ	#ð * qØ�]‰]˜;Ó'×)Ñ)ˆ÷*ä��QÔÜ��QÔð �G€A€qˆ!Ø�	‰	�!�Q‹€AØ�	‰	�!‹×ÑœBŸG™GÓ$€AÜ	�X˜sÓ	#ð ! qØ	�‰�q—s‘s˜AŸC™CÔ ÷!à	ñ ;Ü'¨¨1¨a°Ó:‰ˆˆB÷;ä	�X˜sÓ	#ð  qØ—‘˜y¨%Ó0‰ˆˆBØ�T‰Tˆ÷ô ��QÔÜ��QÔÜ��QÔÜ��QÕ÷Iñ ú÷8ñ 8ú÷*ñ *ú÷ñ ú÷5ñ 5ú÷*ñ *ú÷!ð !ú÷;ð ;ú÷ð úsl   Â*K:ÃLÃ3LÅ1L!ÆL.Æ:L;É'MÉ9MÊ"M Ë:LÌLÌLÌ!L+Ì.L8Ì;MÍMÍMÍ M)c                 ó  — t        j                  t        | «      t        t        j                  «       «      d«      }t        j                  t        j                  |«      d¬«       t        j                  j                  d«      }t        |d«      5 }|j                  |j                  d«      «       |j                  |j                  d«      «       d d d «       t        |d«      5 }t        |j                  «       «      dk(  sJ ‚t        |j                  «       «      dk(  sJ ‚t!        j"                  t$        «      5  |j                  «        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   y xY w)	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‰yœ˜V›¤c¬)×*AÑ*AÓ*CÓ&DØ"ó$€Hä‡K�K”—‘˜XÓ&°Õ6Ü
�)‰)×
Ñ
 Ó
"€CÜ	�X˜sÓ	#ð % qØ	�‰�s—y‘y “|Ô$Ø	�‰�s—y‘y “|Ô$÷%ô 
�X˜sÓ	#ð  qÜ�1—<‘<“>Ó" aÒ'Ð'Ð'Ü�1—<‘<“>Ó" aÒ'Ð'Ð'Ü�]‰]œ?Ó+ñ 	Ø�L‰LŒN÷	÷ð ÷%ð %ú÷	ð 	ú÷ð ús2   ÂAEÃ&AE6Ä<E*ÅE6ÅE'Å*E3	Å/E6Å6E?c                 óh  — t        j                  t        | «      t        t        j                  «       «      d«      }t        j                  t        j                  |«      d¬«       t        j                  j                  d«      }t        |d«      5 }|j                  |j                  d«      «       |j                  |j                  d«      «       d d d «       t        |d«      5 }|j                  d	«       d d d «       t        |d
«      5 }t!        |j#                  «       «      dk(  sJ ‚t!        |j#                  «       «      dk(  sJ ‚t%        j&                  t(        «      5  |j#                  «        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   y xY w)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¥     sO  € Ü�y‰yœ˜V›¤c¬)×*AÑ*AÓ*CÓ&DØ"ó$€Hä‡K�K”—‘˜XÓ&°Õ6Ü
�)‰)×
Ñ
 Ó
"€CÜ	�X˜sÓ	#ð % qØ	�‰�s—y‘y “|Ô$Ø	�‰�s—y‘y “|Ô$÷%ô 
ˆh˜Ó	ð  Ø	�‰�Ô÷ä	�X˜sÓ	#ð  qÜ�1—<‘<“>Ó" aÒ'Ð'Ð'Ü�1—<‘<“>Ó" aÒ'Ð'Ð'Ü�]‰]Ô1Ó2ñ 	Ø�L‰LŒN÷	÷ð ÷%ð %ú÷ð ú÷
	ð 	ú÷ð ús>   ÂAFÃ&FÄAF(Å"FÅ3F(ÆFÆFÆF%	Æ!F(Æ(F1c                 óð  — t        j                  t        | «      t        t        j                  «       «      d«      }t        j                  t        j                  |«      d¬«       t        j                  j                  d«      }t        |d«      5 }|j                  |j                  d«      «       |j                  |j                  d«      «       d d d «       t        |d«      5 }|j                  d	«       d d d «       t        |d
«      5 }t!        j"                  t$        «      5  |j'                  «        d d d «       d d d «       y # 1 sw Y   ŒwxY w# 1 sw Y   Œ]xY w# 1 sw Y   Œ*xY w# 1 sw Y   y xY w)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§   (  s  € Ü�y‰yœ˜V›¤c¬)×*AÑ*AÓ*CÓ&DØ"ó$€Hä‡K�K”—‘˜XÓ&°Õ6Ü
�)‰)×
Ñ
 Ó
"€CÜ	�X˜sÓ	#ð % qØ	�‰�s—y‘y “|Ô$Ø	�‰�s—y‘y “|Ô$÷%ô 
ˆh˜Ó	ð  !Ø	�‰�Ô÷ä	�X˜sÓ	#ð  qÜ�]‰]Ô1Ó2ñ 	Ø�L‰LŒN÷	÷ð ÷%ð %ú÷ð ú÷	ð 	ú÷ð ús=   ÂAEÃ&EÄE,Ä&E Ä7E,ÅEÅEÅ E)	Å%E,Å,E5c                 óX  — t        j                  t        | «      t        t        j                  «       «      d«      }t        j                  t        j                  |«      d¬«       t        j                  j                  d«      }t        |d«      5 }|j                  |j                  d«      «       |j                  |j                  d«      «       d d d «       t        |d«      5 }|j                  t        j                   |«      d	z
  «       d d d «       t        |d
«      5 }t#        |j%                  «       «      dk(  sJ ‚t'        j(                  t*        «      5  |j%                  «        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   y xY w)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  sD  € Ü�y‰yœ˜V›¤c¬)×*AÑ*AÓ*CÓ&DØ"ó$€Hä‡K�K”—‘˜XÓ&°Õ6Ü
�)‰)×
Ñ
 Ó
"€CÜ	�X˜sÓ	#ð % qØ	�‰�s—y‘y “|Ô$Ø	�‰�s—y‘y “|Ô$÷%ô 
ˆh˜Ó	ð . Ø	�
‰
”4—<‘< Ó)¨"Ñ,Ô-÷.ä	�X˜sÓ	#ð  qÜ�1—<‘<“>Ó" aÒ'Ð'Ð'Ü�]‰]Ô1Ó2ñ 	Ø�L‰LŒN÷	÷ð ÷%ð %ú÷.ð .ú÷	ð 	ú÷ð ús=   ÂAE<Ã&(FÄ"8F ÅFÅ+F Å<FÆFÆF	ÆF Æ F)c                 óÚ  — 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 }|j                  |d   «       |j                  |«       |j                  |«       d d d «       t        |d	«      5 }|j                  t        j                   |«      d
z
  «       d d d «       t        |d«      5 }t#        |j%                  |¬«      «      dk(  sJ ‚t#        |j%                  |¬«      «      |k(  sJ ‚t'        j(                  t*        «      5  |j%                  |¬«       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   y xY w)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‰yœ˜V›¤c¬)×*AÑ*AÓ*CÓ&DØ"ó$€Hä‡K�K”—‘˜XÓ&°Õ6Ø�G€A€qˆ!Ü	�‰�GœRŸZ™Z¨!¨Q¨Ð0Ð1Ó	2€BÜ
�‰�˜"Ô€AÜ	�X˜sÓ	#ð  qØ	�‰�q˜‘tÔØ	�‰�qÔØ	�‰�qÔ÷ô 
ˆh˜Ó	ð . Ø	�
‰
”4—<‘< Ó)¨"Ñ,Ô-÷.ä	�X˜sÓ	#ð $ qÜ�1—=‘= r�=Ó*Ó+¨qÒ0Ð0Ð0Ü�1—=‘= r�=Ó*Ó+¨qÒ0Ð0Ð0Ü�]‰]Ô1Ó2ñ 	$Ø�M‰M ˆMÔ#÷	$÷$ð $÷ð ú÷.ð .ú÷
	$ð 	$ú÷$ð $ús=   Â87F=Ä(G	Ä?AG!ÆGÆ,G!Æ=GÇ	GÇG	ÇG!Ç!G*)'Ú__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Û Û ÷.ñ .ð
 ˆD�I‰I�l�d—l‘l 8Ó,¨fÓ5€	ð ‡�ñó ðò%ò&	1ò"ò6"ò0!ò..ò,òB.ò6.òbòò"òó $r   