
    f9	                        d dl Z d dlmZ d dlmZ d ZdZdZ ee j                  dk    re j        d         Z	n e
d            e             	  ee	d	          Z eee            e
d
ez             dez   e                                v r eee            e
d
ez             dS dS # e$ r,Z e
d ee          z              e             Y dZ[dS dZ[we$ r:Z e
d ee          z              e
de	z              e             Y dZ[dS dZ[we$ r;Z e
d ee          de	d            e
d            e             Y dZ[dS dZ[we$ r,Z e
d ee          z              e             Y dZ[dS dZ[ww xY w)    N)ZipFile)
BadZipFilec                     |                      d|z             }t          |d          }|                    |           |                                 d S )Nxl/wb)readopenwriteclose)xlsm_zipfilenamedatafiles       Z/var/www/ffwdstore.be/apps/py-env/lib/python3.11/site-packages/../../../bin/vba_extract.pyextract_filer      sL    ==)**D $DJJtJJLLLLL    zvbaProject.binzvbaProjectSignature.bin   a(  
Utility to extract a vbaProject.bin binary from an Excel 2007+ xlsm macro file for insertion into an XlsxWriter file.
If the macros are digitally signed, extracts also a vbaProjectSignature.bin file.

See: https://xlsxwriter.readthedocs.io/working_with_macros.html

Usage: vba_extract file.xlsm
rzExtracted: %sr   zFile error: %sz.File may not be an Excel xlsm macro file: '%s'zFile error: z: ''z)File may not be an Excel xlsm macro file.)syszipfiler   r   r   vba_filenamevba_signature_filenamelenargv	xlsm_fileprintexitr   namelistIOErrorestrKeyError	Exception r   r   <module>r&      s   


                2  3sx==1II	E	)	 	 	 	DFFF wy#&&H L<(((	E/L
()))%%):):)<)<<<X5666o 6677777 =<
    	E
SSVV
#$$$DFFFFFFFFF   	E
SSVV
#$$$	E
:Y
FGGGDFFFFFFFFF   	EECCFFFFIII
6777	E
5666DFFFFFFFFF   	E
SSVV
#$$$DFFFFFFFFFs=   AB- -F2!CF!/DF0EF!FF