
    iS                     ^   d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZmZ g dZ	 G d d      Z
 G d d      Z G d d	ej                        Zdd
edz  fdZedk(  rQ	 e
j"                  ej$                  j&                  e
j(                  <    e j*                   ee j,                               yy)    N)AnyIO)
FakeObject	FakeClassDumpUnpicklermainc                   8    e Zd ZddZdefdZd Zedd       Zy)r   returnNc                 <    || _         || _        || _        d | _        y N)modulenameargsstate)selfr   r   r   s       Q/var/www/html/engine/venv/lib/python3.12/site-packages/torch/utils/show_pickle.py__init__zFakeObject.__init__   s    		
    c                     | j                   dnd| j                   d}| j                   d| j                   | j                  | S )N z(state=).)r   r   r   r   )r   	state_strs     r   __repr__zFakeObject.__repr__   sD    **,BGDJJ>2K	++a		{499-	{CCr   c                     || _         y r   )r   )r   r   s     r   __setstate__zFakeObject.__setstate__   s	    
r   c           	      \   |j                   s'|j                  |j                  t        |             y |j                  Q|j                  |j                   d|j
                          | j                  |j                   ||dz   |dz   ||       y |j                   s|j                  |j                   d|j
                   d       || j                  z  }|j                  d|z         | j                  |j                  |||dz   ||dz          |j                  d       y t        d      )Nr      z
()(state=
 r   zNeed to implement)	r   r   writereprr   r   _format_indent_per_level	Exception)printerobjstreamindent	allowancecontextlevels          r   	pp_formatzFakeObject.pp_format   s    xxCII-LLc#99LLCJJ<q
34OOCHHffqj)a-RWXxxLLCJJ<q
+>?g///FLLv&OOCIIvvy1}guWXyYLL+,,r   r
   N)	__name__
__module____qualname__r   strr   r   staticmethodr,    r   r   r   r      s.    D# D - -r   r   c                   ,    e Zd ZddZdefdZd Zd Zy)r   r
   Nc                 B    || _         || _        | j                  | _        y r   )r   r   fake_new__new__r   r   r   s      r   r   zFakeClass.__init__0   s    	}}r   c                 8    | j                    d| j                   S )Nr   )r   r   )r   s    r   r   zFakeClass.__repr__5   s    ++a		{++r   c                 D    t        | j                  | j                  |      S r   r   r   r   r   r   s     r   __call__zFakeClass.__call__8   s    $++tyy$77r   c                 J    t        | j                  | j                  |dd        S )Nr   r;   r<   s     r   r6   zFakeClass.fake_new;   s    $++tyy$qr(;;r   r-   )r.   r/   r0   r   r1   r   r=   r6   r3   r   r   r   r   /   s    %
,# ,8<r   r   c                        e Zd Zdd	 d	 fdZd Zd Z eej                  j                        Z	d	dZ
e
e	ej                  d   <   ed        Z xZS )
r   F)catch_invalid_utf8c                4    t        |   |fi | || _        y r   )superr   r@   )r   filer@   kwargs	__class__s       r   r   zDumpUnpickler.__init__@   s     	(("4r   c                     t        ||      S r   )r   r8   s      r   
find_classzDumpUnpickler.find_classI   s    &&r   c                     t        dd|f      S )Npersr&   )r   )r   pids     r   persistent_loadzDumpUnpickler.persistent_loadL   s    &%#00r   c                 b   t        j                  d| j                  d            \  }|t        j                  kD  rt        d      | j                  |      }	 t        |dd      }| j                  |       y # t        $ r.}| j                  s t        ddt        |      f      }Y d }~Dd }~ww xY w)Nz<I   zString too long.zutf-8surrogatepassbuiltinUnicodeDecodeError)structunpackreadsysmaxsizer$   r1   rP   r@   r   append)r   strlen	str_bytesr&   exns        r   load_binunicodezDumpUnpickler.load_binunicodeU   s    --diil3CKK.//IIf%		Ki/:C
 	C	 " 	K**Y(<s3xkJC	Ks   A7 7	B. $B))B.r   c                 `     | |      j                         }t        j                  ||       |S )N)r'   )loadpprint)cls	in_stream
out_streamvalues       r   dumpzDumpUnpickler.dumpd   s'    I##%eJ/r   r-   )r.   r/   r0   r   rG   rK   dictpickle
_UnpicklerdispatchrZ   
BINUNICODEclassmethodrb   __classcell__)rE   s   @r   r   r   ?   sg    
  %	5
 5'1 F%%../H &5HVq!" r   r   r
   c                    t        |       dk7  r|t        d      t        j                  j	                  d       t        j                  j	                  d       t        j                  j	                  d       t        j                  j	                  d       t        j                  j	                  d       t        j                  j	                  d       t        j                  j	                  d	       y| d
   }d|vr,t        |d      5 }t        j                  ||       d d d        y |j                  dd
      \  }}t        j                  |      5 }d|vr1|j                  |      5 }t        j                  ||       d d d        n~d}|j                         D ]V  }t        j                  |j                  |      s$|j                  |      5 }t        j                  ||       d d d        d} n |st        d| d|       d d d        y # 1 sw Y   y xY w# 1 sw Y   xY w# 1 sw Y   BxY w# 1 sw Y   y xY w)N   zPass argv of length 2.zusage: show_pickle PICKLE_FILE
z  PICKLE_FILE can be any of:
z    path to a pickle file
z    file.zip@member.pkl
z    file.zip@*/pattern.*
z'      (shell glob pattern for members)
z'      (only first match will be shown)
r   @rb*FTzCould not find member matching z in )lenr$   rT   stderrr    openr   rb   splitzipfileZipFileinfolistfnmatchfilename)	argvoutput_streamfnamehandlezfnamemnamezffoundinfos	            r   r   r   k   s   
4yA~$455

;<

9:

67

45

56

CD

CDGE
%% 	6&v}5	6 	6 C+__V$ 	[%WWU^ >v!&&v}=> > KKM Dt}}e<WWT] Ff)..v}EF $ #&EeWDQWPX$YZZ	[ 	[		6 	6> >F F	[ 	[sN   HH6+H>H6H6H*) H6HH'	#H6*H3/H66H?__main__r   )rT   rd   rQ   r]   rs   rv   typingr   r   __all__r   r   re   r   intr   r.   r,   PrettyPrinter	_dispatchr   exitrx   r3   r   r   <module>r      s          
>- -D< < )F%% )X"[cDj "[J z >H>R>R&&z':':;CHHT#((^ r   