
    ¯wg	                     p    d dl Z d dlZd dlZd dlmZ d dlmZ g dZdad Z	d
dZ
ddZed	k(  r e        yy)    N)Path)ZipFile)
dbmcursestkinterr   testtests	idle_testz__phello__.foo.pyz_bootstrap.pyz_bootstrap_external.py c                 D    | j                  |      r| t        |      d  S | S )N)
startswithlen)textprefixs     U/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/torch/utils/_zip.pyremove_prefixr       s$    vCKM""K    c                     |t        | t        dz         z   }t        |      }|j                  t        v ry |j                  | |       y )N/)r   strip_file_dirr   name	DENY_LISTwrite)	file_pathstrip_file_pathzfprepend_strstripped_file_pathpaths         r   write_to_zipr    &   sC    $}YQT@T'UU"#DyyIHHY*+r   c                     t        j                  d      } | j                  ddd       | j                  ddd	
       | j                  ddd
       | j                  dddd       | j                  ddd
       | j                         }|j                  dz   |j
                  z   }|j                  a|j                  }t        |d      }t        |j                        D ]x  }t        j                  j                  |      rAt        j                  |dz   d      }t        |      D ]  }t!        |t        dz   ||        ct!        |t        dz   ||       z y )NzZip py source)descriptionpaths*zPaths to zip.)nargshelpz--install-dirz--install_dirz#Root directory for all output files)r&   z--strip-dirz--strip_dirz1The absolute directory we want to remove from zipz--prepend-strz--prepend_strz7A string to prepend onto all paths of a file in the zipr   )r&   defaultz
--zip-namez
--zip_namezOutput zip namer   w)modez/**/*.pyT)	recursive)r   )argparseArgumentParseradd_argument
parse_argsinstall_dirzip_name	strip_dirr   r   r   sortedr#   osr   isdirglobr    )parserargszip_file_namer   r   pfilesr   s           r   mainr;   .   s\   $$AF
sA
/T   @  
 F	   l9JKD$$s*T]]:M^^N""K	S	)BDJJ 	O77==IIa*n=E#E] 	~3R[ NS0"+N	Or   __main__)r   )returnN)r+   r5   r3   pathlibr   zipfiler   r   r   r   r    r;   __name__ r   r   <module>rB      sG      	  
	$ ,$ON zF r   