
    IЦiR                        % S SK rS SKrS SKJr  S SKJrJr  S SKJ	r	J
r
JrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJ r J!r!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)J*r*J+r+J,r,J-r-  S SK.J/r/  S SK0J1r1  S SK2J3r3J4r4J5r5J6r6J7r7J8r8J9r9  S SK:r:S SK;J<r<J=r=  / S	Qr>\?" 5       q@\7\9\4\8\4\A4   4      \BS
'   S\6\9\4\8\4\A4   4      4S jrCS\6\9\4\8\4\A4   4      4S jrDS rES\6\9\4\8\4\A4   4      4S jrF " S S5      rGS rHS rI\R                  " SS9S 5       rKS\4S\8\A\A4   4S jrLS\7\A   4S jrM " S S5      rNSS.S\A4S  jjrOg)!    N)encode)CounterOrderedDict)%APPENDAPPENDSBINFLOATBINGETBININTBININT1BININT2	BINPERSIDBINPUT
BINUNICODEBUILDbytes_typesdecode_long
EMPTY_DICT
EMPTY_LIST	EMPTY_SETEMPTY_TUPLEGLOBALLONG1LONG_BINGETLONG_BINPUTMARKNEWFALSENEWOBJNEWTRUENONEPROTOREDUCESETITEMSETITEMSSHORT_BINSTRINGSTOPTUPLETUPLE1TUPLE2TUPLE3UnpicklingError)unpack)maxsize)AnyCallableDictListSetTupleUnion)IMPORT_MAPPINGNAME_MAPPING)sysosposixnt_marked_safe_globals_setsafe_globalsc                 @    [         R                  [        U 5      5      q g N)r:   unionsetr;   s    \/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/torch/_weights_only_unpickler.py_add_safe_globalsrB   Y   s    7==c,>OP    returnc                       [        [        5      $ r=   )listr:    rC   rA   _get_safe_globalsrH   ^   s    ())rC   c                      [        5       qg r=   )r?   r:   rG   rC   rA   _clear_safe_globalsrJ   c   s
    "urC   globals_to_removec                 (    [         [        U 5      -
  q g r=   )r:   r?   )rK   s    rA   _remove_safe_globalsrM   h   s      8#>O:PPrC   c                   H    \ rS rSrS\\\\\\4   4      4S jr	S r
S rSrg)_safe_globalso   r;   c                     Xl         g r=   r@   )selfr;   s     rA   __init___safe_globals.__init__p   s    (rC   c                 .    [        U R                  5        g r=   )rB   r;   )rR   s    rA   	__enter___safe_globals.__enter__s   s    $++,rC   c                 .    [        U R                  5        g r=   )rM   r;   )rR   typevaluetbs       rA   __exit___safe_globals.__exit__v   s    T../rC   r@   N)__name__
__module____qualname____firstlineno__r0   r3   r.   r2   strrS   rV   r\   __static_attributes__rG   rC   rA   rO   rO   o   s0    )T%%#:N0N*O%P )-0rC   rO   c                  L   0 n [          H  n[        U[        5      (       a_  [        U5      S:w  a  [	        S[        U5       35      e[        US   5      [        La  [        S[        US   5       35      eUu  pXU'   Mw  UR                  UR                  p#XU SU 3'   M     U $ )N   zYExpected tuple of length 2 (global, str of callable full path), but got tuple of length:    zHExpected second item in tuple to be str of callable full path, but got: .)
r:   
isinstancetuplelen
ValueErrorrY   rb   	TypeErrorr_   r^   )rcfnamemodules       rA   _get_user_allowed_globalsrq      s    B%a1v{ opstupvowx  AaDz$^_cdefgdh_i^jk  GAtH<<D%&&4&!" & IrC   c                  ^   [         R                  R                  [         R                  R                  [         R                  R                  [         R                  R
                  [         R                  R                  [         R                  R                  [         R                  R                  [         R                  R                  [         R                  R                  [         R                  R                  [         R                  R                  [         R                  R                  1$ r=   )torch_utils_rebuild_parameter_rebuild_parameter_with_state_rebuild_qtensor_rebuild_tensor_rebuild_tensor_v2_rebuild_tensor_v3_rebuild_sparse_tensor_rebuild_meta_tensor_no_storage_rebuild_nested_tensor_rebuild_wrapper_subclass!_rebuild_device_tensor_from_numpy&_rebuild_device_tensor_from_cpu_tensorrG   rC   rA   _tensor_rebuild_functionsr      s    ''22%%$$''''++44++.. 	66 	;;# rC   rf   c                     [         [        [        R                  R                  [        R
                  R                  [        R                  [        R                  [        R                  [        [        [        [        S.n [        R                  R                  5       R!                  5        H  nX[#        U5      '   M     [        R                  R%                  5        H  nX[#        U5      '   M     [        R&                   H   nX UR(                   SUR*                   3'   M"     [        R,                   H  nU[        R                  R.                  [        R                  R0                  4;  aF  [        R
                  R3                  UR*                  5      XR(                   SUR*                   3'   M  X0UR(                   SUR*                   3'   M     [        R4                  [        R6                  [        R8                  [        R:                  [        R<                  4 H  nX@[#        U5      '   M     [?        5        H  nXPSUR*                   3'   M     [        R@                  RB                  U S'   U $ )N)zcollections.OrderedDictzcollections.Counterztorch.nn.parameter.Parameterztorch.serialization._get_layoutz
torch.Sizeztorch.Tensorztorch.devicez_codecs.encodezbuiltins.bytearrayzbuiltins.setzbuiltins.complexrg   ztorch._utils.z#torch._tensor._rebuild_from_type_v2)"r   r   rs   nn	Parameterserialization_get_layoutSizeTensordevicer   	bytearrayr?   complexstorage_dtype_to_storage_type_mapkeysrb   _new_dtypes_tensor_classesr_   r^   _storage_classesTypedStorageUntypedStorageStorageTypeper_tensor_affineper_tensor_symmetricper_channel_affineper_channel_symmetric per_channel_affine_float_qparamsr   _tensor_rebuild_from_type_v2)rm   ttttsqtrn   s         rA   _get_allowed_globalsr      s    $/&(-(:(:+0+>+>+J+Jjj '#B ]]557<<>3q6
 ?]]&&(3q6
 ) ##/1bmm_Abkk]+, $ $$emm00%--2N2NOO383F3F3R3R4B--"++/0 46"--"++/0 % 	""  ##.. 3r7 '(+,]1::,'( )
 160S0SB,-IrC   readlinec                     U " 5       S S R                  S5      nU " 5       S S R                  S5      nX4[        ;   a  [        X4   u  pX4$ U[        ;   a	  [        U   nX4$ )Nutf-8)decoder5   r4   )r   rp   ro   s      rA   _read_global_instructionr      sr    Z_##G,F:cr?!!'*D 	~%#VN3 < 
>	!'<rC   c                    [        5       nS nU R                  nU R                  n0 [        S   S_[        S   S_[
        S   S_[        S   S_[        S   S_[        S   S_[        S   S_[        S   S_[        S   S_[        S   S_[        S   S_[        S   S_[        S   S_[         S   S_["        S   S_[$        S   S_[&        S   S_[(        S   S[*        S   S[,        S   S[.        S   S[0        S   S[2        S   S[4        S   S[6        S   S[8        S   S[:        S   S[<        S   S0En U" S5      nU(       d  [>        e[A        U[B        5      (       d   eUS   [D        S   :X  a$  [G        U5      u  pxURI                  U SU 35        OUS   U;   a  XVS      n	U	(       a  U" U	5        OUS   [J        S   :X  a3  [M        SU" S5      5      S   n
U
[N        :  a  [Q        S5      eU" U
5        OlUS   [R        S   [T        S   1;   a  U" S5      S   n
U" U
5        O?US   [V        S   :X  a  U" S5      S   nO#US   [X        S   :X  a  U$ [Q        S	US    35      eGM2  )
Nr      rf   re      rg   <IString is too longUnsupported operand )-r?   readr   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   r   EOFErrorrh   r   r   r   addr   r+   r,   r*   r$   r   r    r%   )fileglobals_in_checkpointprotocolr   r   op_to_bytes_to_readkeyrp   ro   bytes_to_readstrlens              rA   get_globals_in_pklr      s   EH99D}}Hq	1q	1 	a! 	q	1	
 	
A 	
A 	Q 	Q 	a! 	q	1 	q	1 	q	1 	Q 	Q 	
A  	A!" 	1q#$ 	1q!a!aq	1
A
AQq	1Aq	1A9< 1gN#{++++q6VAY3H=LF!%%$&89V**/A7M]#Vz!}$D$q'*1-F%&:;;LV*E!H55!WQZFLVuQxAwqzHVtAw((!$8Q"ABB7 rC   c                   <    \ rS rSrSS.S\4S jjrS rS rS rS	r	g
)	Unpickleri-  bytesencodingr   c                p    X l         UR                  U l        UR                  U l        0 U l        SU l        g )Nr   )r   r   r   memoproto)rR   r   r   s      rA   rS   Unpickler.__init__.  s+     II	$&	
rC   c           	      V   / U l         / U l        U R                  R                  U l        U R                  nU R                  n U" S5      nU(       d  [
        e[        U[        5      (       d   eUS   [        S   :X  a  [        U R                  5      u  pEU SU 3nU[        ;   a  [        SU SU S35      eU[        5       ;   a  U R                  [        5       U   5        GOU[        5       ;   a  U R                  [        5       U   5        GOUS;   a  [        S	5      eUS
;   a  [        S5      e[        SU SU SU S35      eUS   [        S   :X  a  U R                  R                  5       nU R                  R                  5       nU[         R"                  R$                  L a.  U R                  [         R"                  R$                  " U6 5        G
OU[        5       R'                  5       ;   d  U[        5       R'                  5       ;   a$  U R                  UR(                  " U/UQ76 5        G
Ou[        SU 35      eUS   [*        S   :X  a  U R                  R                  5       nU R                  S   n	U	[        5       R'                  5       ;  a*  U	[        5       R'                  5       ;  a  [        SU	 35      eU	" U6 U R                  S'   G	OUS   [,        S   :X  Ga  U R                  R                  5       n
U R                  S   n[/        U5      [         R0                  L a  UR2                  " U
6   G	Om[/        U5      [         R"                  R$                  L a  UR5                  U
5        G	O4[/        U5      [6        L a  UR8                  R;                  U
5        G	O[/        U5      [        5       R'                  5       ;   d%  [/        U5      [        5       R'                  5       ;   a  [=        US5      (       a  UR5                  U
5        GOSn[        U
[>        5      (       a  [A        U
5      S:X  a  U
u  pU
(       a  UR8                  R;                  U
5        U(       a%  URC                  5        H  u  p[E        XU5        M     GO[        S[/        U5       35      eUS   [F        S   :X  ae  U R                  R                  5       nU R                  S   n[/        U5      [H        La  [        S[/        U5       35      eUR                  U5        GOUS   [J        S   :X  a[  U RM                  5       nU R                  S   n[/        U5      [H        La  [        S[/        U5       35      eURO                  U5        GO&US   [P        S   :X  aF  U R                  R                  5       U R                  R                  5       pXR                  S   U'   GOUS   [R        S   :X  aJ  U RM                  5       n[U        S[A        U5      S5       H  nUUS-      U R                  S   UU   '   M      GOvUS   [V        S   :X  aI  U R                   R                  U R                  5        / U l        U R                  R                  U l        GOUS   [X        S   :X  a,  U RM                  5       nU R                  [?        U5      5        GOUS   [Z        S   :X  a  U R                  S   4U R                  S'   GOUS   [\        S   :X  a.  U R                  S   U R                  S   4/U R                  SS& GOtUS   [^        S   :X  a<  U R                  S   U R                  S   U R                  S   4/U R                  SS& GO(US   [`        S   :X  a  U R                  S5        GOUS   [b        S   :X  a  U R                  S5        GOUS   [d        S   :X  a  U R                  S5        GOUS   [f        S   :X  a  U R                  S5        GOUS   [h        S   :X  a  U R                  / 5        GOyUS   [j        S   :X  a  U R                  0 5        GOVUS   [l        S   :X  a  U R                  [o        5       5        GO+US   [p        S   :X  a&  U R                  [s        SU" S5      5      S   5        GOUS   [t        S   :X  a%  U R                  U R                  S5      S   5        GOUS   [v        S   :X  a&  U R                  [s        SU" S5      5      S   5        GOUS   [x        S   :X  a/  U R                  [s        S U R                  S!5      5      S   5        GOKUS   [z        S   :X  aP  [s        S"U" S5      5      S   nU[|        :  a  [        S#5      e[        U" U5      S$S%5      nU R                  U5        GOUS   [        S   :X  aR  U" S5      S   nU" U5      nU R                  S&:w  a  UR                  U R                  S'5      nU R                  U5        GOUS   [        S   :X  a  U R                  R                  5       n[/        U5      [>        La)  [/        U5      [        L a  [        S([/        U5       35      e[/        U5      [>        L aF  [A        U5      S:  a7  [         R                  R                  US   5      S):w  a  [        S*US    35      eU R                  U R                  U5      5        GOUS   [        S   [        S   4;   aM  US   [        S   :X  a  U" S5      O[s        S"U" S5      5      S   nU R                  U R                  U   5        GODUS   [        S   [        S   4;   a[  US   [        S   :X  a  U" S5      O[s        S"U" S5      5      S   nUS:  a  [        S+5      eU R                  S   U R                  U'   OUS   [        S   :X  a.  U" S5      S   nU" U5      nU R                  [        U5      5        OUS   [        S   :X  aE  U" S5      S   U lQ        U R                  S:w  a$  [        R                  " S,U R                   S-35        O=US   [        S   :X  a  U R                  R                  5       nU$ [        S.US    35      eGMh  )/z{Read a pickled object representation from the open file.

Return the reconstituted object hierarchy specified in the file.
Trf   r   rg   z"Trying to load unsupported GLOBAL z whose module z is blocked.)z1torch.nested._internal.nested_tensor.NestedTensorz1torch.nested._internal.nested_tensor._rebuild_njtz"torch._dynamo.decorators._DimRangez\``torch.nested`` and ``torch._dynamo`` must be imported to load nested jagged tensors (NJTs))z(torch.distributed.device_mesh.DeviceMeshz2torch.distributed.tensor._dtensor_spec.DTensorSpecz1torch.distributed.tensor._dtensor_spec.TensorMetaz torch.distributed.tensor.DTensorz0torch.distributed.tensor.placement_types.Partialz2torch.distributed.tensor.placement_types.Replicatez.torch.distributed.tensor.placement_types.Shardz>``torch.distributed.tensor`` must be imported to load DTensorszUnsupported global: GLOBAL zY was not an allowed global by default. Please use `torch.serialization.add_safe_globals([z.])` or the `torch.serialization.safe_globals([zN])` context manager to allowlist this global if you trust this class/function.zbCan only create new object for nn.Parameter or classes allowlisted via `add_safe_globals` but got r   z0Trying to call reduce for unrecognized function __setstate__Nre   zcCan only build Tensor, Parameter, OrderedDict or types allowlisted via `add_safe_globals`, but got z"Can only append to lists, but got zCan only extend lists, but got FrG   z<ir   z<Hz>dr   r   r   r   surrogatepassr   strictz1persistent_load id must be tuple or int, but got r   z4Only persistent_load of storage is allowed, but got znegative argumentzDetected pickle protocol z in the checkpoint, which was not the default pickle protocol used by `torch.load` (2). The weights_only Unpickler might not support all instructions implemented by this protocol, please file an issue for adding support if you encounter this.r   )U	metastackstackappendr   r   r   rh   r   r   r   _blocklisted_modulesr*   r   rq   r   poprs   r   r   values__new__r!   r   rY   r   set_r   r   __dict__updatehasattrri   rj   itemssetattrr   rF   r   pop_markextendr"   r#   ranger   r&   r'   r(   r)   r   r   r   r   r   r   r   r?   r
   r+   r   r   r   r   r,   rb   r$   r   r   r   intr   _maybe_decode_asciipersistent_loadr	   r   r   r   r   rk   r   r   r    r   warningswarnr%   )rR   r   r   r   rp   ro   	full_pathargsclsfuncstateinst	slotstatekvitemlist_objr   ir   strvalstrdatapididxndatarm   s                              rA   loadUnpickler.load5  s
   
  "
jj''yy==q'Cc;////1v"7F%hav.	11)<YK~V\U]]ij   4 66KK 4 6y AB";"==KK 9 ;I FG *v  
 *X  *5i[ AMMQF S>>BV D<<  Q6!9$zz~~'jjnn&%((,,,KK 2 2D 9:46==??24;;==KKC 7$ 78)::=@  Q6!9$zz~~'zz"~ 4 6 = = ??$=$?$F$F$HH)J4&Q  "&t

2Q58#

(zz"~:-IIu%$Z588#5#55%%e,$Z;.MM((/J";"="D"D"FFDz%9%;%B%B%DDt^44))%0 %)	%eU33E
a/4,E  MM007$(1(9 ' 3 ): *;;?:,H 
 Q6!9$zz~~'::b>>-)<T(^<LM  %Q71:%::b>>-)9$x.9IJ  &Q71:%**..*DJJNN,<A$%

2q!Q8A;&q#e*a0A/4QU|DJJrN58, 1Q47"%%djj1
"jj//Q58#E%L)Q6!9$"&**R.!2

2Q6!9$$(JJrNDJJrN#C"D

23Q6!9$$(JJrNDJJrNDJJrN#S"T

23Q47"D!Q8A;&E"Q71:%D!Q;q>)BQ:a=(BQ:a=(BQ9Q<'CE"Q6!9$F4a1!45Q71:%DIIaLO,Q71:%F4a1!45Q8A;&F416q9:Q:a=(d1g.q1G#)*>??T&\7ODF#Q?1--av,==G+%nnT]]HEGG$Q9Q<'jjnn&9E)$s)32F)KDQTI;W  I&C1++??AG9T)NsSTvhW  D0056QF1I{1~66"%a&F1I"5tAw6$Q;PRSTDIIcN+QF1I{1~66 #A&) 3T!Wd1g9NPQRq5$%899#zz"~		!Q58#GAJAwK-.Q58#!!WQZ
::?MM3DJJ< @Y Y Q47"ZZ^^%	%(<SVH&EFFy rC   c                     U R                   nU R                  R                  5       U l         U R                   R                  U l        U$ r=   )r   r   r   r   )rR   r   s     rA   r   Unpickler.pop_mark  s5    

^^'')
jj''rC   c                     [        S5      e)Nz%unsupported persistent id encountered)r*   )rR   r   s     rA   r   Unpickler.persistent_load$  s    EFFrC   )r   r   r   r   r   r   r   r   N)
r^   r_   r`   ra   rb   rS   r   r   r   rc   rG   rC   rA   r   r   -  s$    07 # fGRGrC   r   ASCIIr   r   c                0    [        XS9R                  5       $ )Nr   )r   r   )r   r   s     rA   r   r   (  s    T-2244rC   )P	functools
_functoolsr   _codecsr   collectionsr   r   pickler   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!   r"   r#   r$   r%   r&   r'   r(   r)   r*   structr+   r6   r,   typingr-   r.   r/   r0   r1   r2   r3   rs   torch._utilsr4   r5   r   r?   r:   rb   __annotations__rB   rH   rJ   rM   rO   rq   r   	lru_cacher   r   r   r   r   rG   rC   rA   <module>r      s  2    ,& & & & & & & & & &N   ? ? ?  5
  HKu #eHeHcM.B$BCD LQDxx}9M/M)N$O Q
*4hhm0D&D EF *
%
QE(E(C-,@"@ABQ0 0$(. a 0 !0f	x 	E#s(O 	>CC >CBxG xGv #* 5C 5rC   