+
    :iZ                     @   ^ RI t ^ RIHt ^ RIHtHtHtHtHtH	t	H
t
Ht ^ RIHtHtHtHtHtHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ]! 4       t]P8                  t]P:                  t]P<                  t]! ]4        ! R	 R
]4      t] ! R R]4      4       t ] ! R R]4      4       t!] ! R R]4      4       t"] ! R R]4      4       t#] ! R R]4      4       t$] ! R R]4      4       t%] ! R R]4      4       t&] ! R R]4      4       t'] ! R R]4      4       t(] ! R R]4      4       t)] ! R R ]4      4       t*] ! R! R"]4      4       t+] ! R# R$]4      4       t,] ! R% R&]4      4       t-] ! R' R(]4      4       t.] ! R) R*]4      4       t/] ! R+ R,]4      4       t0] ! R- R.]4      4       t1] ! R/ R0]4      4       t2] ! R1 R2]4      4       t3] ! R3 R4]4      4       t4R5 t5R6 t6R7 t7]! ]84       ! R8 R9]4      4       t9R: t:R; t;R< t<R= t=]7! ]P|                  P~                  4      t@]=! ] P                  4      tB]=! ] P                  4      tD]7! ]P|                  P                  4      tF]=! ] P                  4      tH]=! ] P                  4      tJ]7! ]P|                  P                  4      tL]=! ] P                  4      tN]=! ] P                  4      tP]7! ]P|                  P                  4      tR]7! ]P|                  P                  4      tT]5! ]P|                  P                  4      tV]6! ] P                  4      tX]5! ]P|                  P                  4      tZ]6! ][4      t\]:! ]P|                  P                  4      t^]<! ] P                  4       ]:! ]P|                  P                  4      ta]<! ] P                  4       ]:! ]P|                  P                  4      td]<! ] P                  4       ]:! ]P|                  P                  4      tg]<! ] P                  4       ]:! ]P|                  P                  4      tj]<! ] P                  4       ]:! ]P|                  P                  4      tm]<! ] P                  4       ]=! ] P                  4       ]=! ] P                  4       R> tqR? tr]q! R@4      ts]q! RA4      tt]q! RB4      tu]q! RC4      tv]q! RD4      tw]q! RE4      tx]q! RF4      ty]q! RG4      tz]q! RH4      t{]q! RI4      t|]q! RJ4      t}]q! RK4      t~]q! RL4      t]q! RM4      t]q! RN4      t]r! RO4      tRP t]EP                  ]EP
                  ]EP                  ]EP                  ]EP                  ]EP                  3t]EP                  ]EP                  ]EP                  ]EP                  3t]EP                  ]EP                  3t]! ]EP                  P                  ]4      t]! ]EP                  P                  ]4      t]! ]EP                  EP                   ]4      t]! ]EP                  EP$                  ]4      t]! ]EP                  EP(                  ]4      t]! ]EP                  EP,                  ]4      t]! ]EP                  EP0                  ]4      t]! ]EP                  EP4                  ]4      t]! ]EP                  EP8                  ]4      t]! ]EP                  EP<                  ]4      t]! ]EP                  EP@                  ]4      t]! ]EP                  EPD                  ]4      t] ! RQ RR]4      4       t] ! RS RT]4      4       t] ! RU RV]4      4       t] ! RW RX]4      4       t] ! RY RZ]4      4       t] ! R[ R\]4      4       t] ! R] R^]4      4       t] ! R_ R`]4      4       t] ! Ra Rb]4      4       t] ! Rc Rd]4      4       t]! ]]EP\                  ! ]4      4       ] F  t]! ]]4       K  	  ]	 F  t]! ]]4       K  	  ] F  t]! ]]4       K  	  ]
 F  t]Re9   g   K  ]! ]]4       K  	  R# )f    N)types)parse_dtypeparse_shaperegister_number_classesregister_numpy_ufunctrigonometric_functionscomparison_functionsmath_operationsbit_twiddling_functions)AttributeTemplateConcreteTemplateAbstractTemplateCallableTemplate	signatureRegistrydim3)
Conversion)cuda) declare_device_function_templatec                   &   a  ] tR t^t o R tRtV tR# )Cuda_array_declc                    R  pV# )c           	         \        V \        P                  4      '       d$   \        V \        P                  4      '       g   R # Ms\        V \        P                  \        P
                  34      '       dB   \        V  Uu. uF"  p\        V\        P                  4      '       * NK$  	  up4      '       d   R # MR # \        V 4      p\        V4      pVe   Ve   \        P                  ! WCRR7      # R # R # u upi )NC)dtypendimlayout)

isinstancer   IntegerIntegerLiteralTupleUniTupleanyr   r   Array)shaper   sr   nb_dtypes   &&   Q/var/www/html/photoedit/myenv/lib/python3.14/site-packages/numba/cuda/cudadecl.pytyper&Cuda_array_decl.generic.<locals>.typer   s     %//!%)=)=>> ?EEKK#@AA!&(!&A 'q%*>*>??!&( ) )) u%D"5)H#(8{{SII )9#(s   =(C1 selfr*   s   & r)   genericCuda_array_decl.generic   s    	J&     r,   N__name__
__module____qualname____firstlineno__r/   __static_attributes____classdictcell____classdict__s   @r)   r   r      s      r1   r   c                   B    ] tR t^2t]P
                  P                  tRtR# )Cuda_shared_arrayr,   N)	r3   r4   r5   r6   r   sharedarraykeyr7   r,   r1   r)   r<   r<   2   s    
++

Cr1   r<   c                   B    ] tR t^7t]P
                  P                  tRtR# )Cuda_local_arrayr,   N)	r3   r4   r5   r6   r   localr>   r?   r7   r,   r1   r)   rA   rA   7   s    
**

Cr1   rA   c                   R   a  ] tR t^<t o ]P
                  P                  tR tRt	V t
R# )Cuda_const_array_likec                    R  pV# )c                     V # Nr,   )ndarrays   &r)   r*   ,Cuda_const_array_like.generic.<locals>.typerA   s    Nr1   r,   r-   s   & r)   r/   Cuda_const_array_like.generic@   s    	r1   r,   N)r3   r4   r5   r6   r   const
array_liker?   r/   r7   r8   r9   s   @r)   rD   rD   <   s     
**

C r1   rD   c                   T    ] tR t^Ft]P
                  t]! ]P                  4      .t
RtR# )Cuda_threadfence_devicer,   N)r3   r4   r5   r6   r   threadfencer?   r   r   nonecasesr7   r,   r1   r)   rN   rN   F   s    


Cuzz"#Er1   rN   c                   T    ] tR t^Lt]P
                  t]! ]P                  4      .t
RtR# )Cuda_threadfence_blockr,   N)r3   r4   r5   r6   r   threadfence_blockr?   r   r   rP   rQ   r7   r,   r1   r)   rS   rS   L   s    

 
 Cuzz"#Er1   rS   c                   T    ] tR t^Rt]P
                  t]! ]P                  4      .t
RtR# )Cuda_threadfence_systemr,   N)r3   r4   r5   r6   r   threadfence_systemr?   r   r   rP   rQ   r7   r,   r1   r)   rV   rV   R   s    

!
!Cuzz"#Er1   rV   c                       ] tR t^Xt]P
                  t]! ]P                  4      ]! ]P                  ]P                  4      .tRtR# )Cuda_syncwarpr,   N)r3   r4   r5   r6   r   syncwarpr?   r   r   rP   i4rQ   r7   r,   r1   r)   rY   rY   X   s-    
--Cuzz"Iejj%(($CDEr1   rY   c                   R   ] tR t^^t]P
                  t]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  ]P                  ]P                  ]P                  4      ]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  ]P                  ]P                  ]P                  4      ]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  ]P                  ]P                  ]P                  4      ]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  ]P                  ]P                  ]P                  4      .tRtR# )Cuda_shfl_sync_intrinsicr,   N)r3   r4   r5   r6   r   shfl_sync_intrinsicr?   r   r   r"   r[   b1i8f4f8rQ   r7   r,   r1   r)   r]   r]   ^   s   

"
"C%++uxx23((EHHehh%((	D%++uxx23((EHHehh%((	D%++uxx23((EHHehh%((	D%++uxx23((EHHehh%((	D	Er1   r]   c                       ] tR t^mt]P
                  t]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  ]P                  4      .tRtR# )Cuda_vote_sync_intrinsicr,   N)r3   r4   r5   r6   r   vote_sync_intrinsicr?   r   r   r"   r[   r_   rQ   r7   r,   r1   r)   rd   rd   m   sG    

"
"Cu{{EHHehh#78xx5885 6Er1   rd   c                   j   ] tR t^tt]P
                  t]! ]P                  ]P                  ]P                  4      ]! ]P                  ]P                  ]P                  4      ]! ]P                  ]P                  ]P                  4      ]! ]P                  ]P                  ]P                  4      .tRtR# )Cuda_match_any_syncr,   N)r3   r4   r5   r6   r   match_any_syncr?   r   r   r[   r`   ra   rb   rQ   r7   r,   r1   r)   rg   rg   t   st    


C%((EHHehh/%((EHHehh/%((EHHehh/%((EHHehh/	Er1   rg   c            	       J   ] tR t^t]P
                  t]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  4      ]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  4      ]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  4      ]! ]P                  ! ]P                  ]P                  34      ]P                  ]P                  4      .tRtR# )Cuda_match_all_syncr,   N)r3   r4   r5   r6   r   match_all_syncr?   r   r   r"   r[   r_   r`   ra   rb   rQ   r7   r,   r1   r)   rj   rj      s    


C%++uxx23UXXuxxH%++uxx23UXXuxxH%++uxx23UXXuxxH%++uxx23UXXuxxH	Er1   rj   c                   T    ] tR t^t]P
                  t]! ]P                  4      .t
RtR# )Cuda_activemaskr,   N)r3   r4   r5   r6   r   
activemaskr?   r   r   uint32rQ   r7   r,   r1   r)   rm   rm      s    
//Cu||$%Er1   rm   c                   T    ] tR t^t]P
                  t]! ]P                  4      .t
RtR# )Cuda_lanemask_ltr,   N)r3   r4   r5   r6   r   lanemask_ltr?   r   r   ro   rQ   r7   r,   r1   r)   rq   rq      s    


Cu||$%Er1   rq   c                      ] tR t^tRt]P                  t]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                   ]	P                   4      ]! ]	P"                  ]	P"                  4      .tRtR# )	Cuda_popczz
Supported types from `llvm.popc`
[here](http://docs.nvidia.com/cuda/nvvm-ir-spec/index.html#bit-manipulations-intrinics)
r,   N)r3   r4   r5   r6   __doc__r   popcr?   r   r   int8int16int32int64uint8uint16ro   uint64rQ   r7   r,   r1   r)   rt   rt      s     ))C%**ejj)%++u{{+%++u{{+%++u{{+%++u{{+%,,-%,,-%,,-	Er1   rt   c                       ] tR t^tRt]P                  t]! ]	P                  ]	P                  ]	P                  ]	P                  4      ]! ]	P                  ]	P                  ]	P                  ]	P                  4      .tRtR# )Cuda_fmaz{
Supported types from `llvm.fma`
[here](https://docs.nvidia.com/cuda/nvvm-ir-spec/index.html#standard-c-library-intrinics)
r,   N)r3   r4   r5   r6   ru   r   fmar?   r   r   float32float64rQ   r7   r,   r1   r)   r   r      sU     ((C%--u}}M%--u}}MEr1   r   c                       ] tR t^t]P
                  P                  t]! ]	P                  ]	P                  ]	P                  ]	P                  4      .tRtR# )	Cuda_hfmar,   N)r3   r4   r5   r6   r   fp16hfmar?   r   r   float16rQ   r7   r,   r1   r)   r   r      s4    
))..C%--u}}MEr1   r   c                       ] tR t^t]P
                  t]! ]P                  ]P                  4      ]! ]P                  ]P                  4      .tRtR# )	Cuda_cbrtr,   N)r3   r4   r5   r6   r   cbrtr?   r   r   r   r   rQ   r7   r,   r1   r)   r   r      s8     ))C%--/%--/Er1   r   c                       ] tR t^t]P
                  t]! ]P                  ]P                  4      ]! ]P                  ]P                  4      .tRtR# )	Cuda_brevr,   N)r3   r4   r5   r6   r   brevr?   r   r   ro   r}   rQ   r7   r,   r1   r)   r   r      s6    
))C%,,-%,,-Er1   r   c                      ] tR t^tRt]P                  t]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                   ]	P                   4      ]! ]	P"                  ]	P"                  4      .tRtR# )Cuda_clzzz
Supported types from `llvm.ctlz`
[here](http://docs.nvidia.com/cuda/nvvm-ir-spec/index.html#bit-manipulations-intrinics)
r,   N)r3   r4   r5   r6   ru   r   clzr?   r   r   rw   rx   ry   rz   r{   r|   ro   r}   rQ   r7   r,   r1   r)   r   r      s     ((C%**ejj)%++u{{+%++u{{+%++u{{+%++u{{+%,,-%,,-%,,-	Er1   r   c                      ] tR t^tRt]P                  t]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P                   4      ]! ]	P                  ]	P                  4      ]! ]	P                  ]	P"                  4      .tRtR# )Cuda_ffszz
Supported types from `llvm.cttz`
[here](http://docs.nvidia.com/cuda/nvvm-ir-spec/index.html#bit-manipulations-intrinics)
r,   N)r3   r4   r5   r6   ru   r   ffsr?   r   r   ro   rw   rx   ry   rz   r{   r|   r}   rQ   r7   r,   r1   r)   r   r      s     ((C%,,

+%,,,%,,,%,,,%,,,%,,-%,,-%,,-	Er1   r   c                   >   a  ] tR t^t o ]P
                  tR tRtV t	R# )	Cuda_selpc                H   V'       d   Q hVw  r4p\         P                  \         P                  \         P                  \         P                  \         P
                  \         P                  \         P                  \         P                  3pWE8w  g   WF9  d   R # \        WCWD4      # rG   )
r   r   r   rx   r|   ry   ro   rz   r}   r   )r.   argskwstestabsupported_typess   &&&    r)   r/   Cuda_selp.generic   sk    w
 !==%-- ;; ;; ;;6
 6Q-!''r1   r,   N)
r3   r4   r5   r6   r   selpr?   r/   r7   r8   r9   s   @r)   r   r      s     
))C( (r1   r   c                 >   a  \          ! V 3R  lR\        4      4       pV# )c                   Z   < ] tR tRt Z t]! ]P                  ]P                  4      .tRt	R# )'_genfp16_unary.<locals>.Cuda_fp16_unaryi  r,   N
r3   r4   r5   r6   r?   r   r   r   rQ   r7   l_keys   r)   Cuda_fp16_unaryr     s    5==%--89r1   r   registerr   r   r   s   f r)   _genfp16_unaryr     s%    :* : : r1   c                 H   a  \        S 4       ! V 3R  lR\        4      4       pV# )c                   .   <a  ] tR tRt o  ZtR tRtV tR# )0_genfp16_unary_operator.<locals>.Cuda_fp16_unaryi  c                    V'       d   Q h\        V4      ^8X  dG   V^ ,          \        P                  8X  d)   \        \        P                  \        P                  4      # R# R#    N)lenr   r   r   )r.   r   r   s   &&&r)   r/   8_genfp16_unary_operator.<locals>.Cuda_fp16_unary.generic  s?    N74yA~$q'U]]": >> #;~r1   r,   Nr3   r4   r5   r6   r?   r/   r7   r8   )r:   r   s   @r)   r   r     s     	? 	?r1   r   register_globalr   r   s   f r)   _genfp16_unary_operatorr     s*    U?* ? ? r1   c                 >   a  \          ! V 3R  lR\        4      4       pV# )c                   p   < ] tR tRt Z t]! ]P                  ]P                  ]P                  4      .tRt	R# ))_genfp16_binary.<locals>.Cuda_fp16_binaryi#  r,   Nr   r   s   r)   Cuda_fp16_binaryr   #  s%    5==%--GHr1   r   r   )r   r   s   f r)   _genfp16_binaryr   "  s(    I+ I I r1   c                   &   a  ] tR tRt o R tRtV tR# )Floati+  c                b    V'       d   Q hVw  pV\         P                  8X  d   \        W34      # R # rG   )r   r   r   )r.   r   r   args   &&& r)   r/   Float.generic.  s,    w%--S&&  r1   r,   Nr2   r9   s   @r)   r   r   +  s     ' 'r1   r   c                 >   a  \          ! V 3R  lR\        4      4       pV# )c                   p   < ] tR tRt Z t]! ]P                  ]P                  ]P                  4      .t	Rt
R# )1_genfp16_binary_comparison.<locals>.Cuda_fp16_cmpi8  r,   N)r3   r4   r5   r6   r?   r   r   r_   r   rQ   r7   r   s   r)   Cuda_fp16_cmpr   8  s)     ehhu}}=
r1   r   r   )r   r   s   f r)   _genfp16_binary_comparisonr   7  s%    
( 
 
 r1   c                 L   a a \        S 4       ! V V3R  lR\        4      4       pV# )c                   4   <a  ] tR tRt o  ZtV3R ltRtV tR# )1_fp16_binary_operator.<locals>.Cuda_fp16_operatoriP  c                h  < V'       d   Q h\        V4      ^8X  Ed   V^ ,          \        P                  8X  g   V^,          \        P                  8X  d   V^ ,          \        P                  8X  d,   V P                  P	                  V^,          V^ ,          4      pM*V P                  P	                  V^ ,          V^,          4      pV\
        P                  8X  g+   V\
        P                  8X  g   V\
        P                  8X  d*   \        S\        P                  \        P                  4      # R# R# R# )   N)
r   r   r   contextcan_convertr   exactpromotesafer   )r.   r   r   convertiblerettys   &&& r)   r/   9_fp16_binary_operator.<locals>.Cuda_fp16_operator.genericT  s    N74yA~!W-aEMM1IGu}},"&,,":":47DG"LK"&,,":":47DG"LK  :#3#33:#5#55:??2$UEMM5==II 3! 2J r1   r,   Nr   )r:   r   r   s   @r)   Cuda_fp16_operatorr   P  s     	J 	Jr1   r   r   )r   r   r   s   ff r)   _fp16_binary_operatorr   O  s3    UJ J- J J4 r1   c                 6    \        V \        P                  4      # rG   )r   r   r_   ops   &r)   _genfp16_comparison_operatorr   n  s     UXX..r1   c                 6    \        V \        P                  4      # rG   )r   r   r   r   s   &r)   _genfp16_binary_operatorr   r  s     U]]33r1   c                     \        R V  2\        P                  \        P                  34      p\        P                  ! V4      # __numba_wrapper_r   r   r   Functionfnamedecls   & r)   _resolve_wrapped_unaryr     s8    +.>ug,F,1MM-2]],<>D >>$r1   c                     \        R V  2\        P                  \        P                  \        P                  34      p\        P                  ! V4      # r   r   r   s   & r)   _resolve_wrapped_binaryr     s?    +.>ug,F,1MM-2]]EMM,KMD >>$r1   hsinhcoshloghlog10hlog2hexphexp10hexp2hsqrthrsqrthfloorhceilhrcphrinthtrunchdivc                 B   a a \          ! V V3R  lR\        4      4       pV# )c                   4   <a  ] tR tRt o  ZtV3R ltRtV tR# )_gen.<locals>.Cuda_atomici  c                2  < V'       d   Q hVw  r4pVP                   S9  d   R # VP                  ^8X  d1   \        VP                   V\        P                  VP                   4      # VP                  ^8  d"   \        VP                   W4VP                   4      # R # rG   )r   r   r   r   intp)r.   r   r   aryidxvalr   s   &&&   r)   r/   !_gen.<locals>.Cuda_atomic.generic  sq    N7 MCcyy/xx1} CSYYGGA Ccii@@ r1   r,   Nr   )r:   r   r   s   @r)   Cuda_atomicr     s     
	A 
	Ar1   r   )r   r   )r   r   r   s   ff r)   _genr     s.    A A& A A r1   c                   R   a  ] tR tRt o ]P
                  P                  tR tRt	V t
R# )Cuda_atomic_compare_and_swapi  c                    V'       d   Q hVw  r4pVP                   pV\        9   d    VP                  ^8X  d   \        WcWf4      # R# R# r   )r   integer_numba_typesr   r   )r.   r   r   r   oldr   dtys   &&&    r)   r/   $Cuda_atomic_compare_and_swap.generic  sC    w#ii%%#((a-Ss00 +8%r1   r,   N)r3   r4   r5   r6   r   atomiccompare_and_swapr?   r/   r7   r8   r9   s   @r)   r  r    s     
++
&
&C1 1r1   r  c                   R   a  ] tR tRt o ]P
                  P                  tR tRt	V t
R# )Cuda_atomic_casi  c                    V'       d   Q hVw  r4rVVP                   pV\        9  d   R # VP                  ^8X  d   \        Ws\        P
                  Ww4      # VP                  ^8  d   \        WsWGV4      # R # rG   )r   r  r   r   r   r   )r.   r   r   r   r   r  r   r  s   &&&     r)   r/   Cuda_atomic_cas.generic  se    w!#ii))88q=Suzz3<<XX\Ss55 r1   r,   N)r3   r4   r5   r6   r   r  casr?   r/   r7   r8   r9   s   @r)   r
  r
    s     
++//C6 6r1   r
  c                   j    ] tR tRt]P
                  t]! ]P                  ]P                  4      .tRtR# )Cuda_nanosleepi  r,   N)r3   r4   r5   r6   r   	nanosleepr?   r   r   voidro   rQ   r7   r,   r1   r)   r  r    s"    
..Cuzz5<<01Er1   r  c                   6   a  ] tR tRt o ]tR tR tR tRt	V t
R# )
Dim3_attrsi  c                "    \         P                  # rG   r   ry   r.   mods   &&r)   	resolve_xDim3_attrs.resolve_x
      {{r1   c                "    \         P                  # rG   r  r  s   &&r)   	resolve_yDim3_attrs.resolve_y  r  r1   c                "    \         P                  # rG   r  r  s   &&r)   	resolve_zDim3_attrs.resolve_z  r  r1   r,   N)r3   r4   r5   r6   r   r?   r  r  r  r7   r8   r9   s   @r)   r  r    s     
C r1   r  c                   ^   a  ] tR tRt o ]P
                  ! ]P                  4      tR t	Rt
V tR# )CudaSharedModuleTemplatei  c                6    \         P                  ! \        4      # rG   )r   r   r<   r  s   &&r)   resolve_array&CudaSharedModuleTemplate.resolve_array  s    ~~/00r1   r,   N)r3   r4   r5   r6   r   Moduler   r=   r?   r$  r7   r8   r9   s   @r)   r"  r"    s!     
,,t{{
#C1 1r1   r"  c                   ^   a  ] tR tRt o ]P
                  ! ]P                  4      tR t	Rt
V tR# )CudaConstModuleTemplatei  c                6    \         P                  ! \        4      # rG   )r   r   rD   r  s   &&r)   resolve_array_like*CudaConstModuleTemplate.resolve_array_like   s    ~~344r1   r,   N)r3   r4   r5   r6   r   r&  r   rK   r?   r*  r7   r8   r9   s   @r)   r(  r(    s!     
,,tzz
"C5 5r1   r(  c                   ^   a  ] tR tRt o ]P
                  ! ]P                  4      tR t	Rt
V tR# )CudaLocalModuleTemplatei$  c                6    \         P                  ! \        4      # rG   )r   r   rA   r  s   &&r)   r$  %CudaLocalModuleTemplate.resolve_array(      ~~.//r1   r,   N)r3   r4   r5   r6   r   r&  r   rB   r?   r$  r7   r8   r9   s   @r)   r-  r-  $  s!     
,,tzz
"C0 0r1   r-  c                      a  ] tR tRt o ]P
                  ! ]P                  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V tR# )CudaAtomicTemplatei,  c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_addr  s   &&r)   resolve_addCudaAtomicTemplate.resolve_add0      ~~o..r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_subr  s   &&r)   resolve_subCudaAtomicTemplate.resolve_sub3  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_andr  s   &&r)   resolve_and_CudaAtomicTemplate.resolve_and_6  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_orr  s   &&r)   resolve_or_CudaAtomicTemplate.resolve_or_9      ~~n--r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_xorr  s   &&r)   resolve_xorCudaAtomicTemplate.resolve_xor<  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_incr  s   &&r)   resolve_incCudaAtomicTemplate.resolve_inc?  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_decr  s   &&r)   resolve_decCudaAtomicTemplate.resolve_decB  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_exchr  s   &&r)   resolve_exchCudaAtomicTemplate.resolve_exchE  r0  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_maxr  s   &&r)   resolve_maxCudaAtomicTemplate.resolve_maxH  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_minr  s   &&r)   resolve_minCudaAtomicTemplate.resolve_minK  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_nanminr  s   &&r)   resolve_nanmin!CudaAtomicTemplate.resolve_nanminN      ~~011r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_atomic_nanmaxr  s   &&r)   resolve_nanmax!CudaAtomicTemplate.resolve_nanmaxQ  ra  r1   c                6    \         P                  ! \        4      # rG   )r   r   r  r  s   &&r)   resolve_compare_and_swap+CudaAtomicTemplate.resolve_compare_and_swapT  s    ~~:;;r1   c                6    \         P                  ! \        4      # rG   )r   r   r
  r  s   &&r)   resolve_casCudaAtomicTemplate.resolve_casW  r7  r1   r,   N)r3   r4   r5   r6   r   r&  r   r  r?   r5  r:  r>  rB  rG  rK  rO  rS  rW  r[  r_  rd  rg  rj  r7   r8   r9   s   @r)   r2  r2  ,  sb     
,,t{{
#C///.///0//22</ /r1   r2  c                     a  ] tR tRt o ]P
                  ! ]P                  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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!# )"CudaFp16Templatei[  c                6    \         P                  ! \        4      # rG   )r   r   	Cuda_haddr  s   &&r)   resolve_haddCudaFp16Template.resolve_hadd_      ~~i((r1   c                6    \         P                  ! \        4      # rG   )r   r   	Cuda_hsubr  s   &&r)   resolve_hsubCudaFp16Template.resolve_hsubb  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   	Cuda_hmulr  s   &&r)   resolve_hmulCudaFp16Template.resolve_hmule  rr  r1   c                    \         # rG   )hdiv_devicer  s   &&r)   resolve_hdivCudaFp16Template.resolve_hdivh      r1   c                6    \         P                  ! \        4      # rG   )r   r   	Cuda_hnegr  s   &&r)   resolve_hnegCudaFp16Template.resolve_hnegk  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   	Cuda_habsr  s   &&r)   resolve_habsCudaFp16Template.resolve_habsn  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   r   r  s   &&r)   resolve_hfmaCudaFp16Template.resolve_hfmaq  rr  r1   c                    \         # rG   )hsin_devicer  s   &&r)   resolve_hsinCudaFp16Template.resolve_hsint  r  r1   c                    \         # rG   )hcos_devicer  s   &&r)   resolve_hcosCudaFp16Template.resolve_hcosw  r  r1   c                    \         # rG   )hlog_devicer  s   &&r)   resolve_hlogCudaFp16Template.resolve_hlogz  r  r1   c                    \         # rG   )hlog10_devicer  s   &&r)   resolve_hlog10CudaFp16Template.resolve_hlog10}      r1   c                    \         # rG   )hlog2_devicer  s   &&r)   resolve_hlog2CudaFp16Template.resolve_hlog2      r1   c                    \         # rG   )hexp_devicer  s   &&r)   resolve_hexpCudaFp16Template.resolve_hexp  r  r1   c                    \         # rG   )hexp10_devicer  s   &&r)   resolve_hexp10CudaFp16Template.resolve_hexp10  r  r1   c                    \         # rG   )hexp2_devicer  s   &&r)   resolve_hexp2CudaFp16Template.resolve_hexp2  r  r1   c                    \         # rG   )hfloor_devicer  s   &&r)   resolve_hfloorCudaFp16Template.resolve_hfloor  r  r1   c                    \         # rG   )hceil_devicer  s   &&r)   resolve_hceilCudaFp16Template.resolve_hceil  r  r1   c                    \         # rG   )hsqrt_devicer  s   &&r)   resolve_hsqrtCudaFp16Template.resolve_hsqrt  r  r1   c                    \         # rG   )hrsqrt_devicer  s   &&r)   resolve_hrsqrtCudaFp16Template.resolve_hrsqrt  r  r1   c                    \         # rG   )hrcp_devicer  s   &&r)   resolve_hrcpCudaFp16Template.resolve_hrcp  r  r1   c                    \         # rG   )hrint_devicer  s   &&r)   resolve_hrintCudaFp16Template.resolve_hrint  r  r1   c                    \         # rG   )htrunc_devicer  s   &&r)   resolve_htruncCudaFp16Template.resolve_htrunc  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_heqr  s   &&r)   resolve_heqCudaFp16Template.resolve_heq      ~~h''r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_hner  s   &&r)   resolve_hneCudaFp16Template.resolve_hne  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_hger  s   &&r)   resolve_hgeCudaFp16Template.resolve_hge  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_hgtr  s   &&r)   resolve_hgtCudaFp16Template.resolve_hgt  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_hler  s   &&r)   resolve_hleCudaFp16Template.resolve_hle  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   Cuda_hltr  s   &&r)   resolve_hltCudaFp16Template.resolve_hlt  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   	Cuda_hmaxr  s   &&r)   resolve_hmaxCudaFp16Template.resolve_hmax  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   	Cuda_hminr  s   &&r)   resolve_hminCudaFp16Template.resolve_hmin  rr  r1   r,   N))r3   r4   r5   r6   r   r&  r   r   r?   rp  ru  ry  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  r7   r8   r9   s   @r)   rm  rm  [  s     
,,tyy
!C))))))(((((()) )r1   rm  c                      a  ] tR tRt o ]P
                  ! ]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R tR tR tR tR t R t!R t"R t#R t$Rt%V t&R # )!CudaModuleTemplatei  c                J    \         P                  ! \        P                  4      # rG   )r   r&  r   cgr  s   &&r)   
resolve_cgCudaModuleTemplate.resolve_cg  s    ||DGG$$r1   c                    \         # rG   r   r  s   &&r)   resolve_threadIdx$CudaModuleTemplate.resolve_threadIdx      r1   c                    \         # rG   r   r  s   &&r)   resolve_blockIdx#CudaModuleTemplate.resolve_blockIdx  r  r1   c                    \         # rG   r   r  s   &&r)   resolve_blockDim#CudaModuleTemplate.resolve_blockDim  r  r1   c                    \         # rG   r   r  s   &&r)   resolve_gridDim"CudaModuleTemplate.resolve_gridDim  r  r1   c                "    \         P                  # rG   r  r  s   &&r)   resolve_laneid!CudaModuleTemplate.resolve_laneid  r  r1   c                J    \         P                  ! \        P                  4      # rG   )r   r&  r   r=   r  s   &&r)   resolve_shared!CudaModuleTemplate.resolve_shared      ||DKK((r1   c                6    \         P                  ! \        4      # rG   )r   r   rt   r  s   &&r)   resolve_popcCudaModuleTemplate.resolve_popc  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   r   r  s   &&r)   resolve_brevCudaModuleTemplate.resolve_brev  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   r   r  s   &&r)   resolve_clzCudaModuleTemplate.resolve_clz  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   r   r  s   &&r)   resolve_ffsCudaModuleTemplate.resolve_ffs  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   r   r  s   &&r)   resolve_fmaCudaModuleTemplate.resolve_fma  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   r   r  s   &&r)   resolve_cbrtCudaModuleTemplate.resolve_cbrt  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   rN   r  s   &&r)   resolve_threadfence&CudaModuleTemplate.resolve_threadfence      ~~566r1   c                6    \         P                  ! \        4      # rG   )r   r   rS   r  s   &&r)   resolve_threadfence_block,CudaModuleTemplate.resolve_threadfence_block  s    ~~455r1   c                6    \         P                  ! \        4      # rG   )r   r   rV   r  s   &&r)   resolve_threadfence_system-CudaModuleTemplate.resolve_threadfence_system  r  r1   c                6    \         P                  ! \        4      # rG   )r   r   rY   r  s   &&r)   resolve_syncwarp#CudaModuleTemplate.resolve_syncwarp  s    ~~m,,r1   c                6    \         P                  ! \        4      # rG   )r   r   r]   r  s   &&r)   resolve_shfl_sync_intrinsic.CudaModuleTemplate.resolve_shfl_sync_intrinsic      ~~677r1   c                6    \         P                  ! \        4      # rG   )r   r   rd   r  s   &&r)   resolve_vote_sync_intrinsic.CudaModuleTemplate.resolve_vote_sync_intrinsic  r&  r1   c                6    \         P                  ! \        4      # rG   )r   r   rg   r  s   &&r)   resolve_match_any_sync)CudaModuleTemplate.resolve_match_any_sync      ~~122r1   c                6    \         P                  ! \        4      # rG   )r   r   rj   r  s   &&r)   resolve_match_all_sync)CudaModuleTemplate.resolve_match_all_sync  r-  r1   c                6    \         P                  ! \        4      # rG   )r   r   rm   r  s   &&r)   resolve_activemask%CudaModuleTemplate.resolve_activemask  r7  r1   c                6    \         P                  ! \        4      # rG   )r   r   rq   r  s   &&r)   resolve_lanemask_lt&CudaModuleTemplate.resolve_lanemask_lt   r0  r1   c                6    \         P                  ! \        4      # rG   )r   r   r   r  s   &&r)   resolve_selpCudaModuleTemplate.resolve_selp  rr  r1   c                6    \         P                  ! \        4      # rG   )r   r   r  r  s   &&r)   resolve_nanosleep$CudaModuleTemplate.resolve_nanosleep  rD  r1   c                J    \         P                  ! \        P                  4      # rG   )r   r&  r   r  r  s   &&r)   resolve_atomic!CudaModuleTemplate.resolve_atomic	  r  r1   c                J    \         P                  ! \        P                  4      # rG   )r   r&  r   r   r  s   &&r)   resolve_fp16CudaModuleTemplate.resolve_fp16  s    ||DII&&r1   c                J    \         P                  ! \        P                  4      # rG   )r   r&  r   rK   r  s   &&r)   resolve_const CudaModuleTemplate.resolve_const      ||DJJ''r1   c                J    \         P                  ! \        P                  4      # rG   )r   r&  r   rB   r  s   &&r)   resolve_local CudaModuleTemplate.resolve_local  rF  r1   r,   N)'r3   r4   r5   r6   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/  r2  r5  r8  r;  r>  rA  rD  rH  r7   r8   r9   s   @r)   r  r    s     
,,t
C%)))((()767-8833/0).)'(( (r1   r  )loglog2log10)operator
numba.corer   numba.core.typing.npydeclr   r   r   r   r   r	   r
   r   numba.core.typing.templatesr   r   r   r   r   r   numba.cuda.typesr   numba.core.typeconvr   numbar   numba.cuda.compilerr   registryr   register_attrr   r   r<   rA   rD   rN   rS   rV   rY   r]   rd   rg   rj   rm   rq   rt   r   r   r   r   r   r   r   r   r   r   floatr   r   r   r   r   r   haddro  addCuda_addiadd	Cuda_iaddhsubrt  subCuda_subisub	Cuda_isubhmulrx  mulCuda_mulimul	Cuda_imulhmaxr  hminr  hnegr  negCuda_neghabsr  absCuda_absheqr  eqhner  nehger  gehgtr  gthler  lehltr  lttruedivitruedivr   r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r|  r   r   r   ry   ro   rz   r}   all_numba_typesr  unsigned_int_numba_typesr  r4  r9  maxrV  minrZ  nanmaxrc  nanminr^  and_r=  or_rA  xorrF  incrJ  decrN  exchrR  r  r
  r  r  r"  r(  r-  r2  rm  r  r&  funcr,   r1   r)   <module>r     sq    @ @ @> > " *  @:&&**  (& 0 
  
 
  
 
,  
 
$. $ 
$
 
$- $ 
$
 
$. $ 
$
 
E$ E 
E
 
/  
 
6/ 6 
6 
*  
 
*  
 
&& & 
&
 
&' & 
&
 
   
$ 
	 	 
	 
   
 
   
 
   
 
  
$ 
  
$ 
(  ( 
((
 ' ' '0>/4 DIINN+	#HLL1$X]]3	DIINN+	#HLL1$X]]3	DIINN+	#HLL1$X]]3	DIINN+	DIINN+	499>>*	"8<<0499>>*	"3'%diimm4 X[[ )%diimm4 X[[ )%diimm4 X[[ )%diimm4 X[[ )%diimm4 X[[ )%diimm4 X[[ ) )) * ** +   %V,$V,$V,&x0%g.$V,&x0%g.%g.&x0&x0%g.$V,%g.&x0%f-& ==%--;;;;. {{ELL{{ELL2  "LL%,,7 t{{8t{{8t{{8t{{8$++,,o> $++,,o> t{{'')<=dkkoo':;t{{(;<t{{(@At{{(@A((*=>  
	1#3 	1 
	1 
6& 6 
6" 
2% 2 
2 
" 
 
 10 1 1 5/ 5 5 0/ 0 0 +/* +/ +/\ [)( [) [)| X(* X( X(v ell4( )
 $D/ $ !D/ ! $D/ $ D''T?3 r1   