+
    ei\  c                   s2   ^ RI t ^ RIt^ RIt^ RIHt ^ RIt^ RIt^ RIH	t
 ^RIHt Rs]! R)R]P                  ! R4      /]
B t	R tR tR	 tR
 t ! R R4      t]! 4       t. R*OtRR./t]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&   ]R,          R.,           ]R&   ]R,          R.,           ]R&   ]R,          R.,           ]R&   ]R,          R.,           ]R&   ]R,          RR.,           ]R&   ]R,          . R+O,           ]R&   ]R,          R.,           ]R&   R.]R&   R.]R&   R.]R&   ]P0                  ! 4       P                  P2                  ^8w  g+   ]P4                  ! 4       P                  P6                  ^8:  d   ]P                  R8w  dz   ]P8                  ! 4       ]P:                  ! 4       3R,8w  dS   ]P=                  . R-O4       ]R,          . R.O,           ]R&   ]R,          . R/O,           ]R &   ]R,          RR.,           ]R&    ! R! R"4      t ! R# R$4      t  ! R% R&4      t! ! R' R(4      t"R# )0    N)Path)c_names_dict)util	CHARACTERcc                  sp    \        \        4      P                  4       P                  R ,          p V R,          # )srcZarray_from_pyobj)r   Z__file__ZresolveZparent)Ztestroot    M/usr/lib64/python3.14/site-packages/numpy/f2py/tests/test_array_from_pyobj.pyget_testdirr	      s+    H~%%'..6H(((    c                 sn    \         f-   \        4       R,          .p \        P                  ! V RR7      s R# R# )z.
Build the required testing extension module

Nzwrapmodule.cZtest_array_from_pyobj_ext)Zmodule_name)wrapr	   r   Zbuild_meson)r   r   r   setup_moduler      s4     |MN*
 1LM	 r
   c                 sP    \         P                  V 4      ^,          p\        V4      # )   )r   array_attrsflags2names)arrflags   & r   
flags_infor   (   s"    S!!$Eur
   c                 s    . pR F=  p\        V 4      \        \        V^ 4      ,          '       g   K,  VP                  V4       K?  	  V# )
CONTIGUOUS)r   ZFORTRANZOWNDATAZ
ENSURECOPYZENSUREARRAYZALIGNEDZ
NOTSWAPPED	WRITEABLEZWRITEBACKIFCOPYZUPDATEIFCOPYZBEHAVEDZ
BEHAVED_ROZCARRAYZFARRAY)Zabsgetattrr   append)r   infoZflagname   &  r   r   r   -   s@    D  u:h222KK!#$ Kr
   c                   sJ   a  ] tR t^Dt o . 3R ltR tR tR tR tR t	Rt
V tR# )	Intentc                s    VR ,          V n         ^ pV FO  pVR8X  d   V\        P                  ,          pK#  V\        \        RVP	                  4       ,           4      ,          pKQ  	  W n        R# ):NNNoptionalZF2PY_INTENT_N)intent_listr   ZF2PY_OPTIONALr   upperr   )selfr   r   is   &&  r   __init__ZIntent.__init__E   sW    &q>AJ+++~	'ABB	 
 
r
   c                sz    VP                  4       pVR 8X  d   RpV P                  V P                  V.,           4      # )in_Zin)Zlower	__class__r   )r   names   &&r   __getattr__ZIntent.__getattr__O   s5    zz|5=D~~d..$788r
   c                s@    R RP                  V P                  4       R2# )zintent(Z,))Zjoinr   r      &r   __str__ZIntent.__str__U   s!    $"2"234A66r
   c                s$    R V P                   : R2# )zIntent(r%   r   r&   r'   r   __repr__ZIntent.__repr__X   s    )),A..r
   c                sx   a  \         ;QJ d    V 3R  lV 4       F  '       d   K   R# 	  R# ! V 3R  lV 4       4      # )c              3   s@   <"   T F  qSP                   9   x  K  	  R # 5iNr)   )Z.0r#   r   s   & r   Z	<genexpr>Z#Intent.is_intent.<locals>.<genexpr>\   s     >4+++s   FT)allr   Znamess   f*r   	is_intentZIntent.is_intent[   s,    s>>ss>s>s>>>>r
   c                st    \        V P                  4      \        V4      8H  ;'       d    V P                  ! V!  # r+   )lenr   r.   r-   s   &*r   is_intent_exactZIntent.is_intent_exact^   s-    4##$E
2MMt~~u7MMr
   )r   r   N)__name__
__module____qualname____firstlineno__r    r$   r(   r*   r.   r0   __static_attributes____classdictcell__Z__classdict__   @r   r   r   D   s-     #% 97/?N Nr
   r   BOOLBYTEUBYTESHORTUSHORTINTUINTLONGULONGLONGLONG	ULONGLONGFLOATDOUBLECFLOATSTRING1STRING5Zwin32
LONGDOUBLECDOUBLECLONGDOUBLEc                   sT   a  ] tR t^t o / tR tR tR tR tR t	R t
R tR tR	tV tR
# )Typec                s   \        V\        P                  4      '       dX   TpR p\        P	                  4        F;  w  r4\        V\
        4      '       d   K  VP
                  VP
                  J g   K9  Tp M	  V P                  P                  VP                  4       R 4      pVe   V# \        P                  V 4      pVP                  V4       WPP                  VP                  4       &   V# r+   )
isinstancenpdtyper   Zitemstype_type_cacheZgetr   Zobject__new___init)clsr#   Zdtype0Znr   objs   &&    r   rR   ZType.__new__   s    dBHH%%FD$**,!!T**v{{aff/DD - oo!!$**,5?JnnS!		$(+

%
r
   c                sl   VP                  4       V n        V P                  R 8X  dQ   \        V P                  ,          p\        P                  V n        ^V n        \        P                  ! R4      V n        EMV P                  P                  R4      '       d   \        V P                  R,          ,          p\        P                  V n        \        V P                  R,          ;'       g    ^ 4      V n        \        P                  ! RV P                   24      V n        Ms\        V P                  ,          p\        \        RV P                  ,           4      V n        VP                  V n        \        P                  ! VP                  4      V n        VP                  V n        VP                  V n        R# )r   r   STRING:Nr   N:r   NNZSZNPY_N)r   NAMEr   r   Z
NPY_STRINGtype_numelsizerN   rO   
startswithintr   itemsizerP   Zchar	dtypechar)r   r#   r   s   && r   rS   Z
Type._init   s   JJL	99#		*D OODMDK#DJYY!!(++		".D OODMdiim00q1DKAdkk]"34DJ		*D#D&499*<=DM--DK$)),DJ II	r
   c                s    R V P                    RV P                   RV P                   RV P                   RV P                   RV P
                   2# )zType(z)|type_num=z, dtype=z, type=z	, elsize=z, dtypechar=)rW   rX   rO   rP   rY   r]   r&   r'   r   r*   ZType.__repr__   sV    		{+dmm_ =** &9T[[M :"nn-/ 	0r
   c                sv    \         V P                  ,           Uu. uF  qP                  V4      NK  	  up# u upi r+   )
_cast_dictrW   r"   r   Z_mr   r   
cast_typesZType.cast_types   s,    -7		-BC-Brr"-BCCCs   6c                sT    \          Uu. uF  qP                  V4      NK  	  up# u upi r+   )_type_namesr"   r_   r   r   	all_typesZType.all_types   s!    -89[rr"[999s   %c                s    \         V P                  ,          P                  p. p\         F;  p\         V,          P                  V8  g   K!  VP	                  \        V4      4       K=  	  V# r+   r   rW   	alignmentra   r   rL   r   ZbitsZtypesr#      &   r   smaller_typesZType.smaller_types   O    DII&00DD!++d2T$Z(   r
   c                s    \         V P                  ,          P                  p. p\         FM  pW0P                  8X  d   K  \         V,          P                  V8X  g   K3  VP	                  \        V4      4       KO  	  V# r+   rc   re   rf   r   equal_typesZType.equal_types   s\    DII&00Dyy D!++t3T$Z(	  
 r
   c                s    \         V P                  ,          P                  p. p\         F;  p\         V,          P                  V8  g   K!  VP	                  \        V4      4       K=  	  V# r+   rc   re   rf   r   larger_typesZType.larger_types   rh   r
   )rW   rO   r]   rY   rP   rX   N)r1   r2   r3   r4   rQ   rR   rS   r*   r`   rb   rg   ri   rj   r5   r6   r7   r8   r   rL   rL      s8     K #.0D: r
   rL   c                   s>   a  ] tR t^t o R tR tR tR tR tRt	V t
R# )Arrayc           
     s    R V P                    RV P                   RV P                   RV P                   RV P                   2
# )zArray(z, z)|arr=)rP   dimsintentrU   r   r&   r'   r   r*   ZArray.__repr__   sD    2dii[4;;- @HH:VDHH:/ 	0r
   c                s   Wn         W n        W0n        \        P                  ! V4      V n        W@n        \        P                  VP                  VP                  W#P                  V4      V n        \        P                  V P                  4      V n        \        V4      ^8  d#   V P                  P!                  R4      '       d    Vf   RV n        RV n        R# VP!                  R4      '       d9   \&        P(                  ! V4      P*                  ! V!  P                  4       V n        Mw\&        P(                  ! \&        P(                  ! WAP,                  R7      P*                  ! V!  V P                  P!                  R4      ;'       d    R;'       g    RR7      V n        V P"                  P/                  V P                  P                  R,          R	7       \        P                  V P"                  4      V n        \        V4      ^8  d#   V P                  P!                  R4      '       d    V P                  ^,          ^8:  d   VP!                  R4      '       d    \1        V P                  \&        P2                  4      '       df   VP                  \5        VP6                  4      P                  8X  d6   VP!                  R
4      '       g   V P                  ^,          ^8:  d   R# R# R# R# R# )   r   NcacherO   CF)orderr   writecopy)rP   rl   rm   rv   Zdeepcopyobj_copyrU   r   ZcallrX   rY   r   r   r   arr_attrr/   r.   pyarr
pyarr_attrrN   arrayZreshaper]   setflagsrM   ndarrayrL   rO   )r   Ztyprl   rm   rU   s   &&&&&r   r    ZArray.__init__   s   		c* 99S\\ ZZ!<<6 ((2t9q={{$$S)) ;DJ"DOG$$#..5::<DJMM2::DA{{,,S199cAAcDJ
 	

$((.."=>**4::6t9q={{$$S)) ==q $ G$$ dhh

++zzT#))_333''//DMM!4D4I4I/ 4 ,r
   c                s`    VP                   VP                   8w  d   R # W8H  P                  4       # )F)shaper,   )r   Zarr1Zarr2s   &&&r   	arr_equalZArray.arr_equalW  s&    ::#!!##r
   c                s,    \        V P                  4      # r+   )strr   r&   r'   r   r(   ZArray.__str__\  s    488}r
   c                s
   V P                   V P                  J d   R# \        V P                   \        P                  4      '       g   R# \
        P                  V P                   4      pV^ ,          V P                  ^ ,          8H  # )z6Check that created array shares data with input array.TF)rU   r   rM   rN   r}   r   r   rx   )r   Zobj_attrr   r   has_shared_memoryZArray.has_shared_memory_  sY    88txx$((BJJ//##DHH-{dmmA...r
   )	r   rx   rl   rm   rU   rw   ry   rz   rP   N)r1   r2   r3   r4   r*   r    r   r(   r   r5   r6   r7   r8   r   rk   rk      s%     0U4n$
/ /r
   rk   c                   s&   a  ] tR tRt o R tRtV tR# )
TestIntentii  c                s    R # r+    r&   r'   r   test_in_outZTestIntent.test_in_outj  s    r
   r   N)r1   r2   r3   r4   r   r5   r6   r7   r8   r   r   r   i  s     - -r
   r   c                   s  a  ] tR tRt o ]P
                  ! RR]R7      R 4       t]R 4       t	]R 4       t
R tR	 t]P                  P                  R
RR.4      ]P                  P                  RRR.4      ]P                  P                  RRR.4      R 4       4       4       tR tR tR tR tR tR tR tR tR tR tR tR tR  tR! tR" tR# tR$ t R% t!R& t"R't#V t$R(# ))TestSharedMemoryis  TZclass)ZautouseZscopeZparamsc                sz   a \        SP                  4      SP                  n        V3R  lSP                  n        R# )c                 sD   < \        \        SP                  4      WV4      # r+   )rk   rL   param)r   rl   rm   rU   requests   &&&&r   Z<lambda>Z-TestSharedMemory.setup_type.<locals>.<lambda>x  s    Es=4r
   N)rL   r   rT   rP   r{   )r   r   s   &fr   
setup_typeZTestSharedMemory.setup_typeu  s&    .4r
   c                s    V P                   P                  P                  R 4      '       d)   V P                   P                  pRV,          RV,          .# ^^.# )rV   12rP   rW   rZ   rY   r   rY   r   r   num2seqZTestSharedMemory.num2seq{  sF    99>>$$X..YY%%F&L#,//1vr
   c                s    V P                   P                  P                  R 4      '       dK   V P                   P                  pRV,          RV,          RV,          .RV,          RV,          RV,          ..# . RO. RO.# )	rV   r   r   Z3Z4Z5Z6)rn         )i   i   r   r   r   r   r   num23seqZTestSharedMemory.num23seq  sm    99>>$$X..YY%%F6\3<v>6\3<v>@ @9%%r
   c                s^    V P                  ^.\        P                  V P                  4      pR# )r   N)r{   rm   r!   r   r   ar   r   test_in_from_2seqZ"TestSharedMemory.test_in_from_2seq  s    JJsFJJ5r
   c                sX   V P                   P                  4        F  p\        P                  ! V P                  VP
                  R 7      pV P                  \        V P                  4      .\        P                  V4      pVP                  V P                   P                  8X  g   K  K  	  R# rp   N)
rP   r`   rN   r{   r   rO   r/   rm   r!   rY   r   trU   r   rf   r   test_in_from_2casttypeZ'TestSharedMemory.test_in_from_2casttype  sl    %%'A((4<<qww7C

C-.

C@Axx499++++ (r
   ru   wZrors   rq   rr   inpZ2seqZ23seqc                sb   \        V RV,           4      p\        P                  ! W@P                  P                  VR7      pVP                  VR8H  R7       T P                  VP                  VR8H  ;'       d#    \        P                  P                  ;'       g    \        P                  V4      pR# )z5Test if intent(in) array can be passed without copiesZnumrO   rs   r   rt   rq   N)
r   rN   r{   rP   rO   r|   r~   rm   r!   r   )r   ru   rs   r   ZseqrU   r   s   &&&&   r   test_in_nocopyZTestSharedMemory.test_in_nocopy  sx    
 dECK(hhs))//?ESL*JJsyy#66&**,,EE6::Mr
   c                s   \         P                  ! V P                  V P                  P                  R 7      pV P                  \        V P                  4      .\        P                  V4      p V P                  ^.\        P                  P                  V P                  4      p\        R4      h  \         d-   p\        T4      P                  R4      '       g   h  Rp?R# Rp?ii ; i)rp   z,intent(inout) should have failed on sequencez6failed to initialize intent(inout|inplace|cache) arrayN)rN   r{   r   rP   rO   r/   rm   inoutr!   SystemErrorZ	TypeErrorr   rZ   )r   rU   r   msgrf   r   test_inout_2seqZ TestSharedMemory.test_inout_2seq  s    hht||499??;JJDLL)*FLL#>	N

A3

 0 0$,,?A LMM  	s8&&LN NN	s   -6B. .C%9!C  C%c                s   \         P                  ! V P                  V P                  P                  R R7      p\        V P                  4      \        V P                  ^ ,          4      3pV P                  V\        P                  P                  V4      p\         P                  ! V P                  V P                  P                  RR7      p\        V P                  4      \        V P                  ^ ,          4      3p V P                  V\        P                  P                  V4      p\        R4      h  \         d-   p\        T4      P                  R4      '       g   h  Rp?R# Rp?ii ; i)rr   r   rq   z2intent(inout) should have failed on improper arrayz(failed to initialize intent(inout) arrayN)rN   r{   r   rP   rO   r/   rm   r!   r   r   
ValueErrorr   rZ   )r   rU   r~   r   r      &    r   test_f_inout_23seqZ#TestSharedMemory.test_f_inout_23seq  s   hht}}DIIOO3GT]]#Sq)9%:;JJufjj..4 hht}}DIIOO3GT]]#Sq)9%:;	F

5&**"2"2C8A DF F  	s8&&>@ @@	s   =+D3 3E*>!E%%E*c                s>   \         P                  ! V P                  V P                  P                  R 7      p\        V P                  4      \        V P                  ^ ,          4      3pV P                  V\        P                  P                  P                  V4      pR# r   )
rN   r{   r   rP   rO   r/   rm   r!   r   r   r   rU   r~   r   rf   r   test_c_inout_23seqZ#TestSharedMemory.test_c_inout_23seq  s_    hht}}DIIOO<T]]#Sq)9%:;JJufjjll00#6r
   c                s   V P                   P                  4        Fn  p\        P                  ! V P                  VP
                  R 7      pV P                  \        V P                  4      .\        P                  P                  V4      pKp  	  R# r   )
rP   r`   rN   r{   r   rO   r/   rm   r!   rv   r   rf   r   test_in_copy_from_2casttypeZ,TestSharedMemory.test_in_copy_from_2casttype  sW    %%'A((4<<qww7C

C-.

EA (r
   c                s    V P                  \        V P                  4      \        V P                  ^ ,          4      .\        P                  V P                  4      pR# r    N)r{   r/   r   rm   r!   r   r   r   test_c_in_from_23seqZ%TestSharedMemory.test_c_in_from_23seq  s<    JJT]]1%5!67MMr
   c                s@   V P                   P                  4        F  p\        P                  ! V P                  VP
                  R 7      pV P                  \        V P                  4      \        V P                  ^ ,          4      .\        P                  V4      pK  	  R# r   )	rP   r`   rN   r{   r   rO   r/   rm   r!   r   rf   r   test_in_from_23casttypeZ(TestSharedMemory.test_in_from_23casttype  sg    %%'A((4==8C

T]]#Sq)9%:;VZZNA (r
   c                s   V P                   P                  4        F  p\        P                  ! V P                  VP
                  R R7      pV P                  \        V P                  4      \        V P                  ^ ,          4      .\        P                  V4      pVP                  V P                   P                  8X  g   K  K  	  R# rr   r   N)
rP   r`   rN   r{   r   rO   r/   rm   r!   rY   r   rf   r   test_f_in_from_23casttypeZ*TestSharedMemory.test_f_in_from_23casttype  s    %%'A((4==sCC

T]]#Sq)9%:;VZZNAxx499++++	 (r
   c                s   V P                   P                  4        F  p\        P                  ! V P                  VP
                  R 7      pV P                  \        V P                  4      \        V P                  ^ ,          4      .\        P                  P                  V4      pVP                  V P                   P                  8X  g   K  K  	  R# r   )rP   r`   rN   r{   r   rO   r/   rm   r!   r   rY   r   rf   r   test_c_in_from_23casttypeZ*TestSharedMemory.test_c_in_from_23casttype  s    %%'A((4==8C

T]]#Sq)9%:;VZZ\\3PAxx499++++	 (r
   c                sV   V P                   P                  4        F  p\        P                  ! V P                  VP
                  R R7      pV P                  \        V P                  4      \        V P                  ^ ,          4      .\        P                  P                  V4      pK  	  R# r   )
rP   r`   rN   r{   r   rO   r/   rm   r!   rv   r   rf   r   test_f_copy_in_from_23casttypeZ/TestSharedMemory.test_f_copy_in_from_23casttype  sm    %%'A((4==sCC

T]]#Sq)9%:;VZZ__A (r
   c                sh   V P                   P                  4        F  p\        P                  ! V P                  VP
                  R 7      pV P                  \        V P                  4      \        V P                  ^ ,          4      .\        P                  P                  P                  V4      pK  	  R# r   )rP   r`   rN   r{   r   rO   r/   rm   r!   r   rv   r   rf   r   test_c_copy_in_from_23casttypeZ/TestSharedMemory.test_c_copy_in_from_23casttype  sq    %%'A((4==8C

T]]#Sq)9%:;VZZ\\=N=NA (r
   c           	     s   V P                   P                  4        EF  pVP                  V P                   P                  8w  d   K+  \        P                  ! V P
                  VP                  R 7      p\        V P
                  4      3pV P	                  V\        P                  P                  P                  V4      pV P	                  V\        P                  P                  V4      p\        P                  ! V P
                  VP                  RR7      pV P	                  V\        P                  P                  P                  V4      pV P	                  V\        P                  P                  V4      p V P	                  V\        P                  P                  VRRR1,          4      p\        R4      h	  R#   \         d.   p\        T4      P                  R4      '       g   h  Rp?EK  Rp?ii ; i)rp   rr   r   Nz8intent(cache) should have failed on multisegmented array(failed to initialize intent(cache) array)rP   rb   rY   rN   r{   r   rO   r/   rm   r!   r   ro   r   r   r   rZ   )r   r   rU   r~   r   r      &     r   test_in_cache_from_2casttypeZ-TestSharedMemory.test_in_cache_from_2casttype   sh   $$&Axx499+++((4<<qww7C&)E

5&**,,"4"4c:A 

5&**"2"2C8A ((4<<qwwcBC

5&**,,"4"4c:A 

5&**"2"2C8APJJufjj&6&6DbD	B "NP P3 '(  3x**BD DDs   65F::G2!G--G2c                s&   V P                   P                  4        EF6  pVP                  R 8X  d   K  VP                  V P                   P                  8  d   K>  \        P
                  ! VP                  \        P                  4      pV'       dL   \        V P                  ^ ,          4      \        P                  ! VP                  4      P                  8  d   K  \        P                  ! V P                  VP                  R7      p\        V P                  4      3p V P                  V\        P                  P                   V4       \#        R4      h	  R#   \$         d.   p\'        T4      P)                  R4      '       g   h  Rp?EKp  Rp?ii ; i)rV   rp   z1intent(cache) should have failed on smaller arrayr   N)rP   rb   rW   rY   rN   Z
issubdtyperO   Zintegerr[   r   ZiinfoZmaxr{   r/   rm   r!   ro   r   r   r   rZ   )r   r   Zis_intrU   r~   r   r   r   $test_in_cache_from_2casttype_failureZ5TestSharedMemory.test_in_cache_from_2casttype_failure  s   $$&Avv!xx499+++]]177BJJ7F#dll1o.!''1B1F1FF((4<<qww7C&)EI

5&**"2"2C8 "GI I' '  3x**BD DDs   +EF#!FFc                s   RpV P                  V\        P                  P                  R4      pRpV P                  V\        P                  P                  R4      pRp V P                  V\        P                  P                  R4      p\	        R4      h  \
         d-   p\        T4      P                  R4      '       g   h  Rp?R# Rp?ii ; i)r   Nz8intent(cache) should have failed on undefined dimensions2failed to create intent(cache|hide)|optional arrayr   r   r   r   r   )r{   rm   ro   hider   r   r   rZ   r   r~   r   r   rf   r   test_cache_hiddenZ"TestSharedMemory.test_cache_hidden4  s    JJufll//6 JJufll//6 	L

5&,,"3"3T:A JL L  	s8&&HJ JJ	s   +B C!CCc                s   RpV P                  V\        P                  R4      pRpV P                  V\        P                  R4      pRpV P                  V\        P                  P                  R4      pRp V P                  V\        P                  R4      p\	        R4      h  \
         d-   p\        T4      P                  R4      '       g   h  Rp?R# Rp?ii ; i)r   Nz7intent(hide) should have failed on undefined dimensionsr   r   r   r   )r{   rm   r   r   r   r   r   rZ   r   rf   r   test_hiddenZTestSharedMemory.test_hiddenH  s    JJufkk40 JJufkk40
 JJufhhmmT2
 	K

5&++t4A IK K  	s8&&HJ JJ	s   7!B# #C.!CCc                s    RpV P                  V\        P                  R4      pRpV P                  V\        P                  R4      pRpV P                  V\        P                  P                  R4      pR# )r   Nr   r   )r{   rm   r   r   )r   r~   r   r   r   test_optional_noneZ#TestSharedMemory.test_optional_nonee  s]    JJufoot4 JJufoot4
 JJufhh//6r
   c                sx    V P                   p\        V4      3pV P                  V\        P                  V4      pR # r+   )r   r/   r{   rm   r   r   rf   r   test_optional_from_2seqZ(TestSharedMemory.test_optional_from_2seqw  s,    llSJJufoos3r
   c                s    V P                   p\        V4      \        V^ ,          4      3pV P                  V\        P                  V4      pV P                  V\        P                  P
                  V4      pR# r   )r   r/   r{   rm   r   r   r   rf   r   test_optional_from_23seqZ)TestSharedMemory.test_optional_from_23seq~  sU    mmS3s1v;'JJufoos3 JJufoo//5r
   c                s    \         P                  ! V P                  V P                  P                  R 7      pVP
                  pV P                  V\        P                  V4      p^6VP                  ^,          ^&   R# r   )	rN   r{   r   rP   rO   r~   rm   inplacer   r   rf   r   test_inplaceZTestSharedMemory.test_inplace  sN    hht}}DIIOO<		JJufnnc2ar
   c                sH   V P                   P                  4        F  pWP                   J d   K  \        P                  ! V P                  VP
                  R 7      pVP                  pV P                  V\        P                  V4      p^6VP                  ^,          ^&   K  	  R# r   )
rP   r`   rN   r{   r   rO   r~   rm   r   r   )r   r   rU   r~   r   r   r   test_inplace_from_casttypeZ+TestSharedMemory.test_inplace_from_casttype  so    %%'AII~((4==8C IIE

5&..#6AAEE!HQK (r
   r   N)%r1   r2   r3   r4   pytestZfixturera   r   Zpropertyr   r   r   r   ZmarkZparametrizer   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r5   r6   r7   r8   r   r   r   s  s&    ^^DD4 E4
   & &)1 [[WsDk2[[WsCj1[[UVW$56% 7 2 3%NF$%-)-11--P:I.L(K:H$)	)
+4 4r
   r   r   )r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   r   )r?   rD   rE   )ZDarwinZarm)rI   rJ   rK   )rA   rD   rE   rI   )rF   rJ   rK   )#rv   ZplatformZsysZpathlibr   r   ZnumpyrN   Znumpy._core._type_aliasesr   Z_c_names_dictZ r   r   ZdictrO   r	   r   r   r   r   rm   ra   r^   Zintpr\   Zclongdoublerd   ZsystemZ	processorZextendrL   rk   r   r   r   r
   r   <module>r      s     
    C   hhsm)N
.N N< 
( vh
'6(2
6  (G94
7 X
6 i
7  (GW+==
7 !'*fh-??
8 w'8U*;;
5 )Wf,==
6 &&1
6  (G94
7 #F+zl:
: $W-=
;  )Xw,??
7 !%(+FF
8 !'*hZ7
8 "
9 "
9 &-
;  WWY__"bnn&6&<&<&F&F!&KLLG#__ 2 2 459JJ?@)&1 5  J| !+< 8 < !J}
 'x0Hi3HHJyN Nbl/ l/^- -s4 s4r
   