
    ¯wg                     X    d dl Z  e j                  dd      Zd Zd Zd Z G d d      Zy)	    NEntryzversion, hashc                 <    | t        |      dz   | dz  z   | dz	  z   z  S )Nl   yn<       )hash)seedvalues     i/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/torch/utils/_cpp_extension_versioner.pyupdate_hashr      s*     4;+tqy9TQYGHH    c                     |D ]0  }t        |      5 }t        | |j                               } d d d        2 | S # 1 sw Y   >xY wN)openr   read)
hash_valuesource_filesfilenamefiles       r
   hash_source_filesr      sN      >(^ 	>t$Z=J	> 	>> 	> 	>s	   8A	c                 @    |D ]  }|s|D ]  }t        | |      }   | S r   )r   )r   build_argumentsgrouparguments       r
   hash_build_argumentsr      s7      ?! ?(X>
?? r   c                       e Zd Zd Zd Zd Zy)ExtensionVersionerc                     i | _         y r   )entries)selfs    r
   __init__zExtensionVersioner.__init__   s	    r   c                 X    | j                   j                  |      }|d S |j                  S r   )r   getversion)r   nameentrys      r
   get_versionzExtensionVersioner.get_version!   s)      &}t7%--7r   c                    d}t        ||      }t        ||      }t        ||      }t        ||      }t        ||      }t        ||      }| j                  j	                  |      }	|	't        d|      x| j                  |<   }	|	j                  S ||	j                  k7  r(t        |	j                  dz   |      x| j                  |<   }	|	j                  S )Nr      )r   r   r   r   r"   r   r   r#   )
r   r$   r   r   build_directory	with_cudais_python_moduleis_standaloner   r%   s
             r
   bump_version_if_changedz*ExtensionVersioner.bump_version_if_changed%   s     
&z<@
)*oF
 _=
 Y7
 -=>
 ];
  &=).q*)==DLL }} 5::%).u}}q/@*)MMDLL}}r   N)__name__
__module____qualname__r    r&   r-    r   r
   r   r      s    8r   r   )collections
namedtupler   r   r   r   r   r1   r   r
   <module>r4      s8     	w8I r   