
    7Th                     r    S SK r S SKJr  S SKJrJr  0 r " S S5      r " S S\5      rS r	S	 r
S
 rSS jrg)    N)partial)dumpsloadsc                   *    \ rS rSrSS jrS rS rSrg)CloudpickledObjectWrapper	   c                     Xl         X l        g N_obj_keep_wrapper)selfobjkeep_wrappers      a/var/www/auris/envauris/lib/python3.13/site-packages/joblib/externals/loky/cloudpickle_wrapper.py__init__"CloudpickledObjectWrapper.__init__
   s    	)    c                     [        U R                  5      nU R                  (       d	  [        U44$ [        XR                  44$ r
   )r   r   r   r   _reconstruct_wrapper)r   _pickled_objects     r   
__reduce__$CloudpickledObjectWrapper.__reduce__   s;    		*!!?,,,#o7I7I%JJJr   c                 P    US;  a  [        U R                  U5      $ [        X5      $ )Nr   )getattrr   )r   attrs     r   __getattr__%CloudpickledObjectWrapper.__getattr__   s)     00499d++t""r   r   r   N)F)__name__
__module____qualname____firstlineno__r   r   r   __static_attributes__ r   r   r   r   	   s    *K#r   r   c                       \ rS rSrS rSrg)CallableObjectWrapper   c                 &    U R                   " U0 UD6$ r
   )r   )r   argskwargss      r   __call__CallableObjectWrapper.__call__   s    yy$)&))r   r%   N)r    r!   r"   r#   r,   r$   r%   r   r   r'   r'      s    *r   r'   c                 F    [        U 5      (       a	  [        XS9$ [        XS9$ )Nr   )callabler'   r   )r   r   s     r   _wrap_non_picklable_objectsr1   #   s!    }}$SDD$SDDr   c                 .    [        U 5      n[        X!5      $ r
   )r   r1   )r   r   r   s      r   r   r   )   s    

 C&s99r   c                 n   S[        U SS5      ;   n[        U [        5      (       a}  [        [        U R                  5      /U R
                   Vs/ s H  n[        U5      PM     snQ70 U R                  R                  5        VVs0 s H  u  p4U[        U5      _M     snnD6$ [        U 5      (       aC  [        U SS5      nU[        USS5      [        R                  -  -  n[        U SS5      nUSU;   -  nU(       d  U $ [        R                  U 5      nUc  [        U S	S
9nU[        U '   U$ s  snf s  snnf )N__main__r!    __code__co_flagsr   r    z<lambda>Fr/   )r   
isinstancer   _wrap_objects_when_neededfuncr*   keywordsitemsr0   inspect	CO_NESTED
WRAP_CACHEgetr1   )r   	need_wrapakv	func_code	func_namewrapped_objs           r   r9   r9   .   s3    gc<<<I#w%chh/
47HH=Hq'*H=

  LL..00DA ,Q//0
 	
 }} CR0	WY
A69J9JJJ	 CR0	Z9,,	
..%K1#EJ%
3/ >s   D,
D1c                    ^ ^ [         R                  " T 5      (       a&   " UU 4S jS[        5      nT R                  Ul        U$ [	        T TS9$ )a  Wrapper for non-picklable object to use cloudpickle to serialize them.

Note that this wrapper tends to slow down the serialization process as it
is done with cloudpickle which is typically slower compared to pickle. The
proper way to solve serialization issues is to avoid defining functions and
objects in the main scripts and to implement __reduce__ functions for
complex classes.
c                   $   > \ rS rSrU U4S jrSrg)<wrap_non_picklable_objects.<locals>.CloudpickledClassWrapper\   c                 .   > T" U0 UD6U l         TU l        g r
   r   )r   r*   r+   r   r   s      r   r   Ewrap_non_picklable_objects.<locals>.CloudpickledClassWrapper.__init__]   s    00	%1"r   r   N)r    r!   r"   r#   r   r$   )r   r   s   r   CloudpickledClassWrapperrJ   \   s    2 2r   rN   r/   )r=   isclassr   r    r1   )r   r   rN   s   `` r   wrap_non_picklable_objectsrP   O   sJ     s	2 	2'@ 	2
 -0LL )'' 'sFFr   )T)r=   	functoolsr   joblib.externals.cloudpickler   r   r?   r   r'   r1   r   r9   rP   r%   r   r   <module>rS      sC      5 
# #**5 *
E:
BGr   