+
    Qi                        R t ^ RIHt ^ RIt^ RIHt  ! R R4      tR tRR lt	R	R
RRRR/R lt
]R8X  Ed   ]! R4       ]! ]P                  R,          4       ]! 4        ]! R4       ]! 4        ]! R4       ]	! ]P                  R,          ^ ^ R4       ]! 4        ]! R4       ]	! ]P                  R,          ^ RR4       ]! 4        ]! R4       ]	! ]P                  R,          ^ ^ R
4       ]! 4        ]! R4       ]	! ]P                  R,          ^ RR
4       ]! 4        ]! R4       ]	! ]P                  R,          ^ ^ RR
4       ]! R4       ]
! R
R
R
R7       R# R# )z:Prints type-coercion tables for the built-in NumPy types

)
namedtupleN)
obj2sctypec                   V   a  ] tR t^t o R tR tR t]P                  ! R4      tRt	V t
R# )GenericObjectc                    Wn         R # Nv)selfr	   s   &&i/Users/mibo/.openclaw/workspace/.venv/lib/python3.14/site-packages/numpy/testing/print_coercion_tables.py__init__GenericObject.__init__   s        c                    V # r    r
   others   &&r   __add__GenericObject.__add__       r   c                    V # r   r   r   s   &&r   __radd__GenericObject.__radd__   r   r   Or   N)__name__
__module____qualname____firstlineno__r   r   r   npdtype__static_attributes____classdictcell__)__classdict__s   @r   r   r      s#      HHSMEr   r   c                    \        R RR7       V  F  p\        VRR7       K  	  \        4        V  F  p\        VRR7       V  F  p\        P                  ! W#R4      '       d   RpMb\        P                  ! W#R4      '       d   RpMB\        P                  ! W#R4      '       d   RpM"\        P                  ! W#R	4      '       d   R
pMRp\        VRR7       K  	  \        4        K  	  R# )X endequiv#safe=	same_kind~unsafe.N)printr   can_cast)ntypescharrowcolcasts   &    r   print_cancast_tabler7      s    	#3d 	GcsC{{3W--Sv..S{33Sx00$C   	 r   Fc                 r   \        R RR7       V  F  p\        VRR7       K  	  \        4        V  EFS  pVR8X  d   \        pM\        V4      p\        VRR7       V  EF  pVR8X  d   \        p	M\        V4      p	 V'       d!   \        P                  ! V! V4      .VR7      p
MV! V4      p
V	! V4      pV'       d7   \        P
                  ! V
P                  VP                  4      P                  pMw\        P                  ! W4      p\        V\        P                  4      '       d   VP                  P                  pM*\        P                  ! \        V4      4      P                  p \        VRR7       EK  	  \        4        EKV  	  R#   \         d    Rp L2\         d    Rp L@\         d    Rp LNi ; i)	+r%   r&   r   )r   !@r)   N)r0   r   r   r   arraypromote_typesr   r3   add
isinstancendarraytype
ValueErrorOverflowError	TypeError)r2   inputfirstvalueinputsecondvalue
firstarrayuse_promote_typesr3   r4   rowtyper5   coltyperowvaluecolvaluevalues   &&&&&        r   print_coercion_tablerN   -   sR   	#3d 	G#:#G oGcsCcz'$S/!xx)A(B'RH&7H"#34$++HNNHNNKPPDFF86E!%44${{//!xxU499 $C  3 4 	C 4     sC   :F
7F
:5F
0AF
=)F

F6F6"F6'F60F65F6r1   Tlegacyflagsc                Z  aaaa ^ RI Hp R&R^ R^R^R^R^R/p^ R^R^R	^R
^R^R^R^R/p\        R. RO4      pV! RRR4      oV! 4       p/ o\        4       oV F  pSP	                  VR,          4       SP	                  VR,          4       VR,          S9  d   / SVR,          &   SVR,          ,          p	WHR,          ,          p VR,          '       d   RMRp^ pVR,          '       d
   V^,          pVR,          '       d
   V^,          pVR,          '       d
   V^,          pWR,          pV! WVR7      WR,          &   K  	  \
        P                  R,          oV3R lp
\        SV
R7      oR'VVV3R llpV '       d(   \        4        \        R4       \        4        V! R4       V'       d(   \        4        \        R 4       \        4        V! R4       V'       dR   \        4        \        V^ ,           R!V^,           R"V^,           R#V^,           R$24       \        4        V! R4       R%# R%# )(zSPrints new casts, the values given are default "can-cast" values, not
actual ones.
)get_all_cast_informationr%   r)   r+   r-   r/   u   ▗u   █u   ▚u   ▐u   ▄u   ▜u   ▙u   ▟	cast_infor1   rO   rP   fromtocastingLrequires_pyapisupports_unalignedno_floatingpoint_errorsr1   rO   rP   Allc                    < \         P                  ! V P                  4      p SP                  VP                  4      pW!P                  3#   \
         d    \         P                  p L*i ; ir   )r   r   rA   indexr3   rB   inf)xr   indxtypess   &  r   sorter$print_new_cast_table.<locals>.sorter   sW      	;;uzz*D jj!!  	66D	s   A A)(A))keyc           
        < \        R RR7       S F8  p\        \        P                  ! VP                  4      P                  RR7       K:  	  \        4        S F  p\        \        P                  ! VP                  4      P                  RR7       SP                  V/ 4      pS F*  p\        \        VP                  VS4      V 4      RR7       K,  	  \        4        K  	  R# )r$   r%   r&   N)r0   r   r   rA   r3   getgetattr)fielddtfrom_dtr4   to_dtdtypesno_cast_infotables   &    r   print_table)print_new_cast_table.<locals>.print_table   s    csB"((277#((c2 G"((7<<(--37))GR(Cgcgge\:EBL  G r   zDCasting: # is equivalent, = is safe, ~ is same-kind, and . is unsafez+L denotes a legacy cast . a non-legacy one.z: no flags, z	: PyAPI, z: supports unaligned, z: no-float-errorsN)r1   )	numpy._core._multiarray_testsrR   r   setr>   r   	typecodessortedr0   )r1   rO   rP   rR   
cast_tableflags_tablerS   castsr6   to_dictrc   rp   rm   rn   ro   rb   s   $$$         @@@@r   print_new_cast_tabler{   W   s     G 	C	3	3	3	3	3J 	
5!U	5!UAu5!U5	K ;(GHIS#s+L$&EEUF

4< 

4:<u$"$E$v,V%9o.XC !!QJE$%%QJE)**QJE"'PUVT
' . LLE" F'F
 
 TUJ;<HQ Q 	Q  6Q  13 	4 	G r   __main__zcan castr\   zJIn these tables, ValueError is '!', OverflowError is '@', TypeError is '#'zscalar + scalarzscalar + neg scalarzarray + scalarzarray + neg scalarr=   zNew casting type promotion:r[   )Frr   )__doc__collectionsr   numpyr   numpy._core.numerictypesr   r   r7   rN   r{   r   r0   ru   r   r   r   <module>r      sN   #  /
 
*'T`T `% `u `F z	*U+,	G	
VW	G	
e,aE:	G	
 e,aU;	G	
e,aD9	G	
e,aT:	G	/e,aE4@	
'($t4@+ r   