ó
¥ –Qc           @   sh  d  d l  Z  d  d l Z d  d l Z d Z d Z d Z d „  Z d „  Z d d d „  ƒ  YZ d d	 „ Z	 d
 „  Z
 d d d „  ƒ  YZ d d  d „  ƒ  YZ d d! d „  ƒ  YZ d d" d „  ƒ  YZ d „  Z d d# d „  ƒ  YZ e d ƒ Z d d$ d „  ƒ  YZ d „  Z e d k rdd  d l Z d Z e e j ƒ d k  r@e d ƒ qdd Ge j d GHe e j d ƒ n  d S(%   iÿÿÿÿNi    i   i   c         C   s   t  t |  ƒ ƒ S(   N(   t   strt   buffer(   t   o(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyt   getRaw   s    c         C   s  t  j |  d t ƒ } t  j | t ƒ d } t  j | t | ƒ } t ƒ  } | j | ƒ } t rö | GH| |  | j	 ƒ  k r d GHn  i t d 6t
 d 6t d 6t d 6t d 6t d 6t d	 6} t t | ƒ | ƒ } | j	 ƒ  | j	 ƒ  k rö Hd
 GH| GHqö n  t  j | ƒ | S(   Ni    t   AAAAAGGHHHHt   VSVersionInfot   FixedFileInfot   StringFileInfot   StringTablet   StringStructt   VarFileInfot	   VarStructs   reconstruction not the same!(   t   win32apit   LoadLibraryExt   LOAD_LIBRARY_AS_DATAFILEt   EnumResourceNamest
   RT_VERSIONt   LoadResourceR   t   fromRawt   TESTt   toRawR   R   R   R	   R
   R   t   evalt   reprt   FreeLibrary(   t   pathnmt   ht   nmt   datat   vst   jt   glblst   vs2(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyt   decode   s0    	
R   c           B   s;   e  Z d  Z d d d „ Z d „  Z d „  Z d d „ Z RS(   s  
    WORD  wLength;        // length of the VS_VERSION_INFO structure
    WORD  wValueLength;   // length of the Value member
    WORD  wType;          // 1 means text, 0 means binary
    WCHAR szKey[];        // Contains the Unicode string "VS_VERSION_INFO".
    WORD  Padding1[];
    VS_FIXEDFILEINFO Value;
    WORD  Padding2[];
    WORD  Children[];     // zero or more StringFileInfo or VarFileInfo
                          // structures (or both) that are children of the
                          // current version structure.
    c         C   s   | |  _  | p g  |  _ d  S(   N(   t   ffit   kids(   t   selfR!   R"   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyt   __init__B   s    	c      	   C   sà  t  | ƒ \ } \ } } } } | d d d } t ƒ  |  _ |  j j | | ƒ } t rš | | | !|  j j ƒ  k rš d G| | | !GHd G|  j j ƒ  GHn  | } x9| | k  rÛ| } t  | | ƒ \ } \ } }	 }
 } t | ƒ j ƒ  d k r8t ƒ  } | j | |	 | | | | | ƒ } t r| | | !| j ƒ  k r| | | !} | j ƒ  } xv t	 d t
 | ƒ d ƒ D]\ } | | | d !} | | | d !} | | k rjd | | | f GHd	 | | | f GHHqjqjWd
 t
 | ƒ t j d | d  ƒ d f GHd t
 | ƒ t j d | d  ƒ d f GHn  |  j j | ƒ | } n„ t ƒ  } | j | |	 | | | | | ƒ } |  j j | ƒ t r¶| | | !| j ƒ  k r¶d G| | | !GHd G| j ƒ  GHn  | } | | } | d d d } q£ W| S(   Ni   i   s   raw:s   ffi:R   i    i   s   rd[%s:%s+16]: %rs   sd[%s:%s+16]: %rs   raw: len %d, wLength %dR   i   s   sfi: len %d, wLength %ds   vfi:(   t   parseCommonR   R!   R   R   R   R    t   stripR   t   ranget   lent   structt   unpackR"   t   appendR
   (   R#   R   t   it   sublent   vallent   wTypeR   R   t   csublent   cvallent   ctypt   sfit   kt   rdt   sdt   xt   rdst   sdst   vfi(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   F   sP    "!	"&)		"
c   
      C   s  t  j d ƒ } |  j j ƒ  } t | ƒ } d } d d t | ƒ d } d } | d ra d } n  | t | ƒ | } d } | d rŽ d } n  d j g  |  j D] } | j ƒ  ^ qž ƒ }	 | t | ƒ t |	 ƒ } t j d | | | ƒ t	 | ƒ d | | | |	 S(	   Nt   VS_VERSION_INFOi    i   i   t    i   t     t   hhh(
   t
   pywintypest   UnicodeR!   R   R(   t   joinR"   R)   t   packR   (
   R#   R   t   rawffiR.   t   typR-   t   padt   pad2t   kidt   tmp(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   t   s    
	
	+R<   c         C   se   | d } g  |  j  D] } | j | d ƒ ^ q } d j | ƒ } d | |  j j | ƒ | | | f S(   Ns     s   , 
s*   VSVersionInfo(
%sffi=%s,
%skids=[
%s
%s]
)(   R"   t   __repr__RA   R!   (   R#   t   indentRG   RH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRI   †   s    
&N(   t   __name__t
   __module__t   __doc__t   NoneR$   R   R   RI   (    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   4   s
   	.	c         C   s^   | d } t  j d |  | | !ƒ \ } } } t |  | | | ƒ \ } } | | | | | f f S(   Ni   t   3h(   R)   R*   t   parseUString(   R   t   startR,   t   wLengtht   wValueLengthR/   t   szKey(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR%      s    
"c         C   sh   | } x5 | | k  r= |  | | d !d k r0 Pn  | d 7} q	 Wt  j |  | | !ƒ } | d 7} | | f S(   Ni   R=   (   R?   t   UnicodeFromRaw(   R   RQ   t   limitR,   RT   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRP   ™   s    
R   c        	   B   sM   e  Z d  Z d
 d d d d d d d d „ Z d „  Z d „  Z d d	 „ Z RS(   sü  
    DWORD dwSignature;        //Contains the value 0xFEEFO4BD
    DWORD dwStrucVersion;     // binary version number of this structure.
                              // The high-order word of this member contains
                              // the major version number, and the low-order
                              // word contains the minor version number.
    DWORD dwFileVersionMS;    // most significant 32 bits of the file's binary
                              // version number
    DWORD dwFileVersionLS;    //
    DWORD dwProductVersionMS; // most significant 32 bits of the binary version
                              // number of the product with which this file was
                              // distributed
    DWORD dwProductVersionLS; //
    DWORD dwFileFlagsMask;    // bitmask that specifies the valid bits in
                              // dwFileFlags. A bit is valid only if it was
                              // defined when the file was created.
    DWORD dwFileFlags;        // VS_FF_DEBUG, VS_FF_PATCHED etc.
    DWORD dwFileOS;           // VOS_NT, VOS_WINDOWS32 etc.
    DWORD dwFileType;         // VFT_APP etc.
    DWORD dwFileSubtype;      // 0 unless VFT_DRV or VFT_FONT or VFT_VXD
    DWORD dwFileDateMS;
    DWORD dwFileDateLS;
    i    i?   i  i   c	   	      C   sÑ   d |  _  d |  _ | d d >| d d @B|  _ | d d >| d d @B|  _ | d d >| d d @B|  _ | d d >| d d @B|  _ | |  _ | |  _ | |  _ | |  _	 | |  _
 | d |  _ | d |  _ d  S(	   Nl   ½Þ} i   i    i   i   iÿÿ  i   i   (   t   sigt   strucVersiont   fileVersionMSt   fileVersionLSt   productVersionMSt   productVersionLSt   fileFlagsMaskt	   fileFlagst   fileOSt   fileTypet   fileSubtypet
   fileDateMSt
   fileDateLS(	   R#   t   fileverst   prodverst   maskt   flagst   OSR`   t   subtypet   date(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR$   ½   s    							c         C   ss   t  j d | | | d !ƒ \ |  _ |  _ |  _ |  _ |  _ |  _ |  _ |  _	 |  _
 |  _ |  _ |  _ |  _ | d S(   Nt   13li4   (   R)   R*   RW   RX   RY   RZ   R[   R\   R]   R^   R_   R`   Ra   Rb   Rc   (   R#   R   R,   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   Î   s    kc         C   s[   t  j d |  j |  j |  j |  j |  j |  j |  j |  j	 |  j
 |  j |  j |  j |  j ƒ S(   Nt   L12l(   R)   RB   RW   RX   RY   RZ   R[   R\   R]   R^   R_   R`   Ra   Rb   Rc   (   R#   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   Þ   s    R<   c         C   s  |  j  d ?|  j  d @|  j d ?|  j d @f } |  j d ?|  j d @|  j d ?|  j d @f } |  j |  j f } d d t | ƒ d t | ƒ d t |  j ƒ d t |  j	 ƒ d t |  j
 ƒ d	 t |  j ƒ d
 t |  j ƒ d t | ƒ d g
 } d | d j | ƒ S(   Ni   iÿÿ  s   FixedFileInfo(s   filevers=%s,s   prodvers=%s,s   mask=%s,s	   flags=%s,s   OS=%s,s   fileType=%s,s   subtype=%s,s   date=%st   )s   
s     (   RY   RZ   R[   R\   Rb   Rc   R   t   hexR]   R^   R_   R`   Ra   RA   (   R#   RJ   t   fvt   pvt   fdRH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRI   í   s     	(   i    i    i    i    (   i    i    i    i    (   i    i    (   RK   RL   RM   R$   R   R   RI   (    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   ¥   s   		R   c           B   s8   e  Z d  Z d d „ Z d „  Z d „  Z d d „ Z RS(   s»  
    WORD        wLength;      // length of the version resource
    WORD        wValueLength; // length of the Value member in the current
                              // VS_VERSION_INFO structure
    WORD        wType;        // 1 means text, 0 means binary
    WCHAR       szKey[];      // Contains the Unicode string 'StringFileInfo'.
    WORD        Padding[];
    StringTable Children[];   // list of zero or more String structures
    c         C   s   d |  _  | p g  |  _ d  S(   NR   (   t   nameR"   (   R#   R"   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR$     s    	c         C   sZ  | |  _  xJ| | k  rUt ƒ  } | j | | | ƒ } t r<| | | !| j ƒ  k r<| | | !}	 | j ƒ  }
 xv t d t |	 ƒ d ƒ D]\ } |	 | | d !} |
 | | d !} | | k r‡ d | | | f GHd | | | f GHHq‡ q‡ Wd t |	 ƒ t j d |	 d  ƒ d f GHd t |
 ƒ t j d |
 d  ƒ d f GHn  |  j	 j
 | ƒ | } q W| S(	   Ni    i   s   rd[%s:%s+16]: %rs   sd[%s:%s+16]: %rs   raw: len %d, wLength %dR   i   s    st: len %d, wLength %d(   Rr   R   R   R   R   R'   R(   R)   R*   R"   R+   (   R#   R-   R.   Rr   R   R,   RV   t   stR   R5   R6   R7   R8   R9   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR     s*    		&)
c         C   sþ   t  |  j ƒ t k r- t j |  j ƒ |  _ n  d } d } d d t |  j ƒ d } d } | d rm d } n  d j g  |  j D] } | j ƒ  ^ q} ƒ } | t | ƒ t | ƒ } | d d k rÏ | d } n  t	 j
 d	 | | | ƒ t |  j ƒ d | | S(
   Ni    i   i   i   R<   i   R=   iþÿÿÿR>   (   t   typeRr   t
   STRINGTYPER?   R@   R(   RA   R"   R   R)   RB   R   (   R#   R.   RD   R-   RE   RG   RH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   )  s    
	+R<   c         C   sR   | d } g  |  j  D] } | j | ƒ ^ q } d j | ƒ } d | | | | f S(   Ns     s   , 
s   %sStringFileInfo(
%s[
%s
%s])(   R"   RI   RA   (   R#   RJ   t	   newindentRG   RH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRI   9  s    
"N(   RK   RL   RM   RN   R$   R   R   RI   (    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR     s
   			R   c           B   s;   e  Z d  Z d d d „ Z d „  Z d „  Z d d „ Z RS(   s   
    WORD   wLength;
    WORD   wValueLength;
    WORD   wType;
    WCHAR  szKey[];
    String Children[];    // list of zero or more String structures.
    c         C   s"   | p	 d |  _  | p g  |  _ d  S(   NR<   (   Rr   R"   (   R#   Rr   R"   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR$   J  s    c   	      C   sÇ   t  | | | ƒ \ } \ } } } |  _ x™ | | k  rÂ t ƒ  } | j | | | ƒ } t r— | | | !| j ƒ  k r— d G| | | !GHd G| j ƒ  GHn  | } |  j j | ƒ | d d d } q* W| S(   Ns   raw:s    ss:i   i   (   t   parseCodePageRr   R	   R   R   R   R"   R+   (	   R#   R   R,   RV   t   cpsublent   cpwValueLengtht   cpwTypet   ssR   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   N  s    '	c         C   s  t  |  j ƒ t k r- t j |  j ƒ |  _ n  d } d } d d t |  j ƒ d } g  } xG |  j D]< } | j ƒ  } t | ƒ d r“ | d } n  | j | ƒ qd Wd j	 | ƒ } | t | ƒ 7} | d d k rà | d 8} n  t
 j d	 | | | ƒ t |  j ƒ d | S(
   Ni    i   i   i   i   R=   R<   iþÿÿÿR>   (   Rt   Rr   Ru   R?   R@   R(   R"   R   R+   RA   R)   RB   R   (   R#   R.   RD   R-   RH   RG   t   raw(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   ]  s     R<   c         C   sI   | d } t  t |  j ƒ } d | j | ƒ } d | | |  j | | f S(   Ns     s   ,
%ss   %sStringTable(
%s%r,
%s[%s])(   t   mapR   R"   RA   Rr   (   R#   RJ   Rv   RH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRI   p  s
    
N(   RK   RL   RM   RN   R$   R   R   RI   (    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   B  s
   		R	   c           B   s;   e  Z d  Z d d d „ Z d „  Z d „  Z d d „ Z RS(   s‚   
    WORD   wLength;
    WORD   wValueLength;
    WORD   wType;
    WCHAR  szKey[];
    WORD   Padding[];
    String Value[];
    c         C   s"   | p	 d |  _  | p d |  _ d  S(   NR<   (   Rr   t   val(   R#   Rr   R~   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR$     s    c         C   s_   t  | | ƒ \ } \ } } } |  _ | | } | d d d } t | | | ƒ \ } |  _ | S(   Ni   i   (   R%   Rr   RP   R~   (   R#   R   R,   RV   R-   R.   RD   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   …  s
    $
c         C   sû   t  |  j ƒ t k r- t j |  j ƒ |  _ n  t  |  j ƒ t k rZ t j |  j ƒ |  _ n  t |  j ƒ d } d } d d t |  j ƒ d } d } | d r§ d } n  | t | ƒ d | } t j d | | | ƒ t	 |  j ƒ d | t	 |  j ƒ d S(   Ni   i   i   R<   i   R=   R>   (
   Rt   Rr   Ru   R?   R@   R~   R(   R)   RB   R   (   R#   R.   RD   R-   RE   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   Œ  s    
	R<   c         C   s   d |  j  |  j f S(   Ns   StringStruct(%r, %r)(   Rr   R~   (   R#   RJ   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRI   œ  s    N(   RK   RL   RM   RN   R$   R   R   RI   (    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR	   x  s
   		c         C   s7   t  |  | ƒ \ } \ } } } } | | | | | f f S(   N(   R%   (   R   R,   RV   R-   RS   R/   R   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRw      s    !R
   c           B   s8   e  Z d  Z d d „ Z d „  Z d „  Z d d „ Z RS(   s—  
    WORD  wLength;        // length of the version resource
    WORD  wValueLength;   // length of the Value member in the current
                          // VS_VERSION_INFO structure
    WORD  wType;          // 1 means text, 0 means binary
    WCHAR szKey[];        // Contains the Unicode string 'VarFileInfo'.
    WORD  Padding[];
    Var   Children[];     // list of zero or more Var structures
    c         C   s   | p	 g  |  _  d  S(   N(   R"   (   R#   R"   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR$   ±  s    c   	      C   s»   | |  _  | |  _ | |  _ | d d d } x‡ | | k  r¶ t ƒ  } | j | | | ƒ } |  j j | ƒ t r­ | | | !| j ƒ  k r­ d G| | | !GHd G| j ƒ  GHn  | } q0 W| S(   Ni   i   s   raw:s   cmp:(	   R-   R.   Rr   R   R   R"   R+   R   R   (	   R#   R-   R.   Rr   R   R,   RV   R   R   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   ´  s    				
c         C   sØ   d |  _  d |  _ t j d ƒ |  _ d d t |  j ƒ d } d } | d rX d } n  d j g  |  j D] } | j ƒ  ^ qh ƒ } | t | ƒ t | ƒ |  _	 t
 j d	 |  j	 |  j  |  j ƒ t |  j ƒ d | | S(
   Ni    i   R
   i   i   R<   i   R=   R>   (   R.   R/   R?   R@   Rr   R(   RA   R"   R   R-   R)   RB   R   (   R#   R-   RE   RG   RH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   Ã  s    		
	+R<   c         C   s)   t  t |  j ƒ } d | d j | ƒ f S(   Ns   %sVarFileInfo([%s])s   , (   R}   R   R"   RA   (   R#   RJ   RH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRI   Ð  s    N(   RK   RL   RM   RN   R$   R   R   RI   (    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR
   §  s
   			R<   R   c           B   s;   e  Z d  Z d d d „ Z d „  Z d „  Z d d „ Z RS(   s  
    WORD  wLength;        // length of the version resource
    WORD  wValueLength;   // length of the Value member in the current
                          // VS_VERSION_INFO structure
    WORD  wType;          // 1 means text, 0 means binary
    WCHAR szKey[];        // Contains the Unicode string 'Translation'
                          // or a user-defined key string value
    WORD  Padding[];      //
    WORD  Value[];        // list of one or more values that are language
                          // and code-page identifiers
    c         C   s"   | p	 d |  _  | p g  |  _ d  S(   NR<   (   Rr   R"   (   R#   Rr   R"   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR$   ã  s    c         C   sœ   t  | | ƒ \ } \ |  _ |  _ |  _ |  _ | d d d } xV t |  j d ƒ D]A } t j d | | | d !ƒ d } |  j j	 | ƒ | d 7} qS W| S(   Ni   i   i   R   i    (
   R%   R-   RS   R/   Rr   R'   R)   R*   R"   R+   (   R#   R   R,   RV   R   RG   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   ç  s    -!c         C   s  t  |  j ƒ d |  _ d |  _ t |  j ƒ t k rL t j |  j ƒ |  _ n  d d t  |  j ƒ d } d } | d r€ d } n  | t  | ƒ |  j |  _	 d j
 g  |  j D] } t j d | ƒ ^ qª ƒ } t j d |  j	 |  j |  j ƒ t |  j ƒ d | | S(	   Ni   i    i   R<   i   R=   R   R>   (   R(   R"   RS   R/   Rt   Rr   Ru   R?   R@   R-   RA   R)   RB   R   (   R#   R-   RE   RG   RH   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   ð  s    	
	1R<   c         C   s   d |  j  |  j f S(   Ns   VarStruct(%r, %r)(   Rr   R"   (   R#   RJ   (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyRI   þ  s    N(   RK   RL   RM   RN   R$   R   R   RI   (    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyR   ×  s
   			c         C   s{   t  | t ƒ r | } n! t | d ƒ j ƒ  } t | ƒ } t j |  d ƒ } t j | t d | j	 ƒ  ƒ t j
 | d ƒ d  S(   Nt   rUi    i   (   t
   isinstanceR   t   opent   readR   R   t   BeginUpdateResourcet   UpdateResourceR   R   t   EndUpdateResource(   t   exenmt   versionfileR   t   txtt   hdst(    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyt
   SetVersion  s    	t   __main__i   s;   c:/Program Files/Netscape/Communicator/Program/netscape.exet	   Examining(    (    (    (    (    (    (    (   R   R)   R?   R   R   R   R   R    R   R%   RP   R   R   R   R	   Rw   R
   Rt   Ru   R   RŠ   RK   t   sysR(   t   argv(    (    (    s`   C:\Users\Salopaasi\My Documents\pyinstaller-pyinstaller-275d4c9\PyInstaller\utils\versioninfo.pyt   <module>   s4   		\		_>6(	.+	