
    i
                     *   S SK Jr  S SKJr  S SKJrJr  S SKJr  S SK	J
r
  S SKJr  S SKJr  \
" 5       r\R                   r\R"                  " \R$                  " S5      5      r\S	 5       r\R+                  \R,                  5      \R+                  \R.                  5      S
 5       5       r\R+                  \R2                  5      S 5       r\R+                  \R6                  5      S 5       r\" \\R<                  " \R>                  5      5      S 5       r g)    )singledispatch)ir)typescgutils)NumbaWarning)Registry)	nvvmutils)warn   c                      [        SU < 35      e)z
Handle printing of a single value of the given Numba type.
A (format string, [list of arguments]) is returned that will allow
forming the final printf()-like call.
z*printing unimplemented for values of type )NotImplementedError)tycontextbuildervals       O/var/www/html/trading/venv/lib/python3.13/site-packages/numba/cuda/printimpl.py
print_itemr      s     !#& ' '    c                     U [         R                  ;   a  Sn[         R                  nOSn[         R                  nUR	                  X#X5      nXF/4$ )Nz%lluz%lld)r   unsigned_domainuint64int64cast)r   r   r   r   rawfmtdsttypellds          r   int_print_implr      sH     
U""",,++
,,wR
1C5=r   c                 N    UR                  X#U [        R                  5      nSU/4$ )Nz%f)r   r   float64)r   r   r   r   r   s        r   real_print_implr    )   s$    
,,wR
7C#;r   c                 v    U R                   n[        U[        5      (       d   eSnUR                  X$5      nXV/4$ )Nz%s)literal_value
isinstancestrinsert_string_const_addrspace)r   r   r   sigvalpyvalr   r   s          r   const_print_implr(   /   s?    EeS!!!!F

/
/
?C5=r   c                    [         R                  " UR                  5      n/ n/ n[        [	        UR
                  U5      5       H8  u  nu  p[        XX5      u  pUR                  U
5        UR                  U5        M:     SR                  U5      S-   n[        U5      S:  a$  Sn[        U[        5        UR                  SS5      nU R                  X5      n[        R                   " X5      n[        R"                  " X5      n[         R                  " UR                  5      nUR%                  XNUR'                  U[(        5      45        U R+                  5       $ )zThis function is a generic 'print' wrapper for arbitrary types.
It dispatches to the appropriate 'print' implementations above
depending on the detected real types in the signature. 
    zjCUDA print() cannot print more than 32 items. The raw format string will be emitted by the kernel instead.%z%%)r	   declare_vprintmodule	enumeratezipargsr   appendextendjoinlenr
   r   replacer%   r   make_anonymous_structalloca_once_valuecallbitcastvoidptrget_dummy_value)r   r   sigr2   vprintformatsvaluesiargtypeargvalargfmtargvalsr   msgfmtarrayarrayptrs                    r   print_varargsrK   8   s    %%gnn5FGF )#chh*= >G$WwGvg !?
 XXg%F
4y2~NS,T*

/
/
@C))':E((8H%%gnn5FLLwxABC""$$r   N)!	functoolsr   llvmliter   
numba.corer   r   numba.core.errorsr   numba.core.imputilsr   
numba.cudar	   warningsr
   registrylowerPointerTypeIntTyper<   r   registerIntegerIntegerLiteralr   Floatr    StringLiteralr(   printVarArgAnyrK    r   r   <module>r`      s    $  % * (   :
..A
'
 ' ' U]]#U))* + $ U[[! "
 U(() * uell599%&% '%r   