-
<c       s*    d  Z    d k Z  d k Z  d k Z  d k Z  d d d g Z  d e f d     YZ # e d  \ Z	 Z
 Z & d Z ' d Z ( e d	  Z / e i d
 j ou 0 d k Z 1 d k Z 2 y 3 e i Z Wn 4 e j
 o 6 e Z n X8 d   Z ; d   Z G d   Z n9 S d f  d     YZ Y d   Z j d f  d     YZ w d f  d     YZ  d f  d     YZ  d f  d     YZ d   Z d f  d     YZ Cd f  d     YZ yd f  d     YZ d    Z  d!   Z! e" d" j o e!   n d S(#   s   Macintosh binhex compression/decompression.

easy interface:
binhex(inputfilename, outputfilename)
hexbin(inputfilename, outputfilename)
Ns   binhexs   hexbins   Errorc      s    t  Z   RS(   N(   s   __name__s
   __module__(    (    (    s   /usr/lib/python2.2/binhex.pys   Error s   	i   i   i@   i   s   macc      s   8 9 t  i   Sd  S(   N(   s   macfss   FInfo(    (    (    s   /usr/lib/python2.2/binhex.pys   FInfo8 s   c    s   ; < t  i |   i   } = t i i |   \ } } ? t
 |  d  } @ | i d d  A | i   } B t |  d  } C | i d d  D | i   } E | | | | f Sd  S(   Ns   rbi    i   s   *rb(   s   macfss   FSSpecs   names   GetFInfos   finfos   oss   paths   splits   dirs   files   opens   fps   seeks   tells   dlens   openrfs   rlen(   s   names   fps   rlens   files   finfos   dirs   dlen(    (    s   /usr/lib/python2.2/binhex.pys   getfileinfo; s   c    s@   G H | o I d } n K d | d } L t |  |  Sd  S(   Ns   *rbs   *i    (   s   modes   openrfs   name(   s   names   mode(    (    s   /usr/lib/python2.2/binhex.pys   openrsrcG s   s   FInfoc      s   S t  Z T d   Z RS(   Nc    s+   T U d |  _ V d |  _ W d |  _ d  S(   Ns   ????i    (   s   selfs   Types   Creators   Flags(   s   self(    (    s   /usr/lib/python2.2/binhex.pys   __init__T s   (   s   __name__s
   __module__s   __init__(    (    (    s   /usr/lib/python2.2/binhex.pys   FInfoS s   	c    s  Y Z t    } \ t |   } ] t |   i d  } ^ xV | D^ ]? } _ | i   o | d j  p t	 |  d j o ` Pn q@ Wb d | _
 c | i d d  d | i   } e | i   f t i i |   \ } } g | i d d d	  } h | | | d f Sd  S(
   Ni   s    i   s   TEXTi    i   s   :s   -i   (   s   FInfos   finfos   opens   names   fps   reads   datas   cs   isspaces   ords   Types   seeks   tells   dsizes   closes   oss   paths   splits   dirs   files   replace(   s   names   fps   cs   finfos   datas   dsizes   files   dir(    (    s   /usr/lib/python2.2/binhex.pys   getfileinfoY s   
 	1s   openrsrcc      s;   j t  Z k d   Z n d   Z q d   Z t d   Z RS(   Nc    s
   k l d  S(   N(    (   s   selfs   args(    (    s   /usr/lib/python2.2/binhex.pys   __init__k s   c    s   n o d Sd  S(   Ns    (    (   s   selfs   args(    (    s   /usr/lib/python2.2/binhex.pys   readn s   c    s
   q r d  S(   N(    (   s   selfs   args(    (    s   /usr/lib/python2.2/binhex.pys   writeq s   c    s
   t u d  S(   N(    (   s   self(    (    s   /usr/lib/python2.2/binhex.pys   closet s   (   s   __name__s
   __module__s   __init__s   reads   writes   close(    (    (    s   /usr/lib/python2.2/binhex.pys   openrsrcj s   	s   _Hqxcoderenginec      sD   w t  Z d  Z x z d   Z  d   Z  d   Z  d   Z RS(   s(   Write data to the coder in 3-byte chunksc    s;   z { | |  _  | d |  _ } d |  _ ~ t d |  _ d  S(   Ns    i   (   s   ofps   selfs   datas   hqxdatas   LINELENs   linelen(   s   selfs   ofp(    (    s   /usr/lib/python2.2/binhex.pys   __init__z s   c    s     |  i | |  _  t |  i  }  | d d }  |  i |  }  |  i | |  _  | o  d  Sn  |  i t i |  |  _  |  i d  d  S(   Ni   i    (	   s   selfs   datas   lens   datalens   todos   hqxdatas   binasciis   b2a_hqxs   _flush(   s   selfs   datas   datalens   todo(    (    s   /usr/lib/python2.2/binhex.pys   write s   c    s     d }  xk  | t |  i  |  i j oJ  | |  i }  |  i i |  i | | !d   t |  _  | } q W |  i | |  _  | o  |  i i |  i d  n d  S(   Ni    s   
s   :
(
   s   firsts   lens   selfs   hqxdatas   linelens   lasts   ofps   writes   LINELENs   force(   s   selfs   forces   lasts   first(    (    s   /usr/lib/python2.2/binhex.pys   _flush s   	  !
c    s`     |  i o#  |  i t i |  i  |  _ n  |  i d   |  i i    |  ` d  S(   Ni   (   s   selfs   datas   hqxdatas   binasciis   b2a_hqxs   _flushs   ofps   close(   s   self(    (    s   /usr/lib/python2.2/binhex.pys   close s
   #(   s   __name__s
   __module__s   __doc__s   __init__s   writes   _flushs   close(    (    (    s   /usr/lib/python2.2/binhex.pys   _Hqxcoderenginew s
   s   _Rlecoderenginec      s8    t  Z d  Z   d   Z  d   Z  d   Z RS(   s4   Write data to the RLE-coder in suitably large chunksc    s     | |  _   d |  _ d  S(   Ns    (   s   ofps   selfs   data(   s   selfs   ofp(    (    s   /usr/lib/python2.2/binhex.pys   __init__ s   c    sr     |  i | |  _  t |  i  t j  o  d  Sn  t i |  i  }  |  i i |   d |  _ d  S(   Ns    (	   s   selfs   datas   lens   REASONABLY_LARGEs   binasciis   rlecode_hqxs   rledatas   ofps   write(   s   selfs   datas   rledata(    (    s   /usr/lib/python2.2/binhex.pys   write s   c    sY     |  i o,  t i |  i  }  |  i i |  n  |  i i    |  ` d  S(   N(   s   selfs   datas   binasciis   rlecode_hqxs   rledatas   ofps   writes   close(   s   selfs   rledata(    (    s   /usr/lib/python2.2/binhex.pys   close s
   (   s   __name__s
   __module__s   __doc__s   __init__s   writes   close(    (    (    s   /usr/lib/python2.2/binhex.pys   _Rlecoderengine s   s   BinHexc      sk    t  Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z	 RS(	   Nc 
   s$   | \ } } } }  t |  t d  j o[  | }  t | d  }  t i  d j o)  t	 i
 |  }  | i d d  n n  | i d   t |  }	  t |	  |  _  d |  _  | t j o  t   } n  | |  _  | |  _  |  i | |   t |  _ d  S(   Ns    s   ws   macs   BnHqs   TEXTs0   (This file must be converted with BinHex 4.0)

:i    (   s   names   finfos   dlens   rlens   types   ofps   ofnames   opens   oss   macfss   FSSpecs   fsss   SetCreatorTypes   writes   _Hqxcoderengines   hqxers   _Rlecoderengines   selfs   crcs   Nones   FInfos
   _writeinfos   _DID_HEADERs   state(
   s   selfs   .2s   ofps   names   finfos   dlens   rlens   fsss   ofnames   hqxer(    (    s   /usr/lib/python2.2/binhex.pys   __init__ s    	c 	   s     | }  t |  }  | d j o  t d  n  t |  | d }  | i | i }  t
 i d | i  }  t
 i d |  i |  i  }  | | | | }  |  i |   |  i   d  S(   Ni?   s   Filename too longs    s   >hs   >ii(   s   names   lens   nls   Errors   chrs   ds   finfos   Types   Creators   d2s   structs   packs   Flagss   d3s   selfs   dlens   rlens   d4s   infos   _writes	   _writecrc(	   s   selfs   names   finfos   infos   nls   ds   d4s   d2s   d3(    (    s   /usr/lib/python2.2/binhex.pys
   _writeinfo s   	c    s5     t  i | |  i  |  _  |  i i |  d  S(   N(   s   binasciis   crc_hqxs   datas   selfs   crcs   ofps   write(   s   selfs   data(    (    s   /usr/lib/python2.2/binhex.pys   _write s   c    s5     |  i i t i d |  i    d |  _ d  S(   Ns   >hi    (   s   selfs   ofps   writes   structs   packs   crc(   s   self(    (    s   /usr/lib/python2.2/binhex.pys	   _writecrc s   "c    sS     |  i t j o  t d  n  |  i t |  |  _  |  i |  d  S(   Ns   Writing data at the wrong time(   s   selfs   states   _DID_HEADERs   Errors   dlens   lens   datas   _write(   s   selfs   data(    (    s   /usr/lib/python2.2/binhex.pys   write s   c    sK     |  i d j o  t d |  i  n  |  i    t |  _ d  S(   Ni    s   Incorrect data size, diff=(   s   selfs   dlens   Errors   rlens	   _writecrcs	   _DID_DATAs   state(   s   self(    (    s   /usr/lib/python2.2/binhex.pys
   close_data s   c    sw     |  i t j  o  |  i   n  |  i t j o  t d  n  |  i t |  |  _  |  i |  d  S(   Ns'   Writing resource data at the wrong time(	   s   selfs   states	   _DID_DATAs
   close_datas   Errors   rlens   lens   datas   _write(   s   selfs   data(    (    s   /usr/lib/python2.2/binhex.pys
   write_rsrc s   c    s     |  i t j  o  |  i   n  |  i t j o  t d  n  |  i d j o  t d |  i  n  |  i    |  i i    t	 |  _  |  ` d  S(   Ns   Close at the wrong timei    s"   Incorrect resource-datasize, diff=(
   s   selfs   states	   _DID_DATAs
   close_datas   Errors   rlens	   _writecrcs   ofps   closes   None(   s   self(    (    s   /usr/lib/python2.2/binhex.pys   close s   (
   s   __name__s
   __module__s   __init__s
   _writeinfos   _writes	   _writecrcs   writes
   close_datas
   write_rsrcs   close(    (    (    s   /usr/lib/python2.2/binhex.pys   BinHex s   	c    s  t  |   } t | |  } t |  d  } xD d o9 	| i d  } 
| o 
Pn | i
 |  q? W| i   | i   t |  d  } xD d o9 | i d  } | o Pn | i |  q W| i   | i   d S(   s@   (infilename, outfilename) - Create binhex-encoded copy of a files   rbi   i  N(   s   getfileinfos   inps   finfos   BinHexs   outs   ofps   opens   ifps   reads   ds   writes
   close_datas   closes   openrsrcs
   write_rsrc(   s   inps   outs   ofps   ifps   ds   finfo(    (    s   /usr/lib/python2.2/binhex.pys   binhexs*    
  
 s   _Hqxdecoderenginec      s8   t  Z d  Z d   Z d   Z @d   Z RS(   s*   Read data via the decoder in 4-byte chunksc    s   | |  _  d |  _ d  S(   Ni    (   s   ifps   selfs   eof(   s   selfs   ifp(    (    s   /usr/lib/python2.2/binhex.pys   __init__s   c    s]   d } !| } %x4%| d j o#&|  i o &| Sn '| d d d } (|  i i |  } .x .d o /y# 0t i	 |  \ } |  _ 2PWn 3t i j
 o
 4n X5|  i i d  } 6| o 7t d  n 9| | } qv W:| | } ;| t |  } <| o |  i o =t d  n q W>| Sd S(	   s&   Read at least wtd bytes (or until EOF)s    i    i   i   i   i   s   Premature EOF on binhex fileN(   s   decdatas   totalwtds   wtds   selfs   eofs   ifps   reads   datas   binasciis   a2b_hqxs
   decdatacurs
   Incompletes   newdatas   Errors   len(   s   selfs   totalwtds   wtds   decdatas   datas
   decdatacurs   newdata(    (    s   /usr/lib/python2.2/binhex.pys   reads2   		   
c    s   @A|  i i   d  S(   N(   s   selfs   ifps   close(   s   self(    (    s   /usr/lib/python2.2/binhex.pys   close@s   (   s   __name__s
   __module__s   __doc__s   __init__s   reads   close(    (    (    s   /usr/lib/python2.2/binhex.pys   _Hqxdecoderengines   "s   _Rledecoderenginec      sD   Ct  Z d  Z DFd   Z Ld   Z Sd   Z vd   Z RS(   s   Read data via the RLE-coderc    s7   FG| |  _  Hd |  _ Id |  _ Jd |  _ d  S(   Ns    i    (   s   ifps   selfs
   pre_buffers   post_buffers   eof(   s   selfs   ifp(    (    s   /usr/lib/python2.2/binhex.pys   __init__Fs   c    sk   LM| t |  i  j o! N|  i | t |  i   n O|  i |  } P|  i | |  _ Q| Sd  S(   N(   s   wtds   lens   selfs   post_buffers   _fills   rv(   s   selfs   wtds   rv(    (    s   /usr/lib/python2.2/binhex.pys   readLs
   !c    sg  ST|  i |  i i | d  |  _ U|  i i o6 V|  i t i |  i  |  _ Xd |  _ Yd  Sn ft	 |  i  } g|  i d t d t j o h| d } n i|  i d t j o j| d } nX k|  i d t d j o l| d } n, m|  i d t j o nn p| d	 } r|  i t i |  i |   |  _ t|  i | |  _ d  S(
   Ni   s    is    i   ii   ii   (   s   selfs
   pre_buffers   ifps   reads   wtds   eofs   post_buffers   binasciis   rledecode_hqxs   lens   marks   RUNCHAR(   s   selfs   wtds   mark(    (    s   /usr/lib/python2.2/binhex.pys   _fillSs"   ##c    s   vw|  i i   d  S(   N(   s   selfs   ifps   close(   s   self(    (    s   /usr/lib/python2.2/binhex.pys   closevs   (   s   __name__s
   __module__s   __doc__s   __init__s   reads   _fills   close(    (    (    s   /usr/lib/python2.2/binhex.pys   _RledecoderengineCs
   #s   HexBinc      sk   yt  Z zd   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 RS(	   Nc    s  z{t  |  t  d  j o |t |  } n x d o | i d  } | o t d  n | d j o
 q8 n | d j o Pn | d j o | i   } n q8 Wt |  } t
 |  |  _ d |  _ |  i   d  S(   Ns    i   s   No binhex data founds   s   :s   
i    (   s   types   ifps   opens   reads   chs   Errors   readlines   dummys   _Hqxdecoderengines   hqxifps   _Rledecoderengines   selfs   crcs   _readheader(   s   selfs   ifps   hqxifps   dummys   ch(    (    s   /usr/lib/python2.2/binhex.pys   __init__zs"    

c    s>   |  i i |  } t i | |  i  |  _ | Sd  S(   N(   s   selfs   ifps   reads   lens   datas   binasciis   crc_hqxs   crc(   s   selfs   lens   data(    (    s   /usr/lib/python2.2/binhex.pys   _reads   c    s   t  i d |  i i d   d d @} |  i d @|  _ | |  i j o t d |  i | f  n d |  _ d  S(   Ns   >hi   i    i  s   CRC error, computed %x, read %x(   s   structs   unpacks   selfs   ifps   reads   filecrcs   crcs   Error(   s   selfs   filecrc(    (    s   /usr/lib/python2.2/binhex.pys	   _checkcrcs
   )c    s>  |  i d  } |  i t |   } |  i d d d d d d  } |  i   | d d !} | d d !} t	 i
 d | d d ! d } t	 i
 d	 | d d
 ! d |  _ t	 i
 d	 | d
 d ! d |  _ | |  _ t   |  _ | |  i _ | |  i _ | |  i _ t |  _ d  S(   Ni   i   i   i   i	   s   >hi   i    s   >li   i   (   s   selfs   _reads   lens   ords   fnames   rests	   _checkcrcs   types   creators   structs   unpacks   flagss   dlens   rlens   FNames   FInfos   Creators   Types   Flagss   _DID_HEADERs   state(   s   selfs   creators   rests   lens   flagss   fnames   type(    (    s   /usr/lib/python2.2/binhex.pys   _readheaders   & ##c    s   |  i t j o t d  n | o& | d } t | |  i  } n |  i } d } x; t |  | j  o$ | |  i	 | t |   } qq W|  i | |  _ | Sd  S(   Ns   Read data at wrong timei    s    (
   s   selfs   states   _DID_HEADERs   Errors   ns   mins   dlens   rvs   lens   _read(   s   selfs   ns   rv(    (    s   /usr/lib/python2.2/binhex.pys   reads   
	 %c    si   |  i t j o t d  n |  i o |  i |  i  } n |  i   t |  _ d  S(   Ns   close_data at wrong time(	   s   selfs   states   _DID_HEADERs   Errors   dlens   _reads   dummys	   _checkcrcs	   _DID_DATA(   s   selfs   dummy(    (    s   /usr/lib/python2.2/binhex.pys
   close_datas   c    s   |  i t j o |  i   n |  i t j o t d  n | o& | d } t | |  i  } n |  i } |  i | |  _ |  i	 |  Sd  S(   Ns    Read resource data at wrong timei    (
   s   selfs   states   _DID_HEADERs
   close_datas	   _DID_DATAs   Errors   ns   mins   rlens   _read(   s   selfs   n(    (    s   /usr/lib/python2.2/binhex.pys	   read_rsrcs   
c    sV   |  i o |  i |  i  } n |  i   t |  _ |  i i   d  S(   N(	   s   selfs   rlens	   read_rsrcs   dummys	   _checkcrcs	   _DID_RSRCs   states   ifps   close(   s   selfs   dummy(    (    s   /usr/lib/python2.2/binhex.pys   closes
   (
   s   __name__s
   __module__s   __init__s   _reads	   _checkcrcs   _readheaders   reads
   close_datas	   read_rsrcs   close(    (    (    s   /usr/lib/python2.2/binhex.pys   HexBinys   	
c    s  t  |   } | i } | o | i } n t i d j o% t	 i
 |  } | i   } n t | d  } xD d o9 | i d  } | o Pn | i |  q W| i   | i   | i d  } | o} t | d  } | i |  xD d o9 | i d  } | o Pn | i |  q.W| i   n t i d j oP | i   } | i | _ | i | _  | i | _ | i |  n | i   d S(   s0   (infilename, outfilename) - Decode binhexed files   macs   wbi   i  N(   s   HexBins   inps   ifps   FInfos   finfos   outs   FNames   oss   names   macfss   FSSpecs   ofsss   as_pathnames   opens   ofps   reads   ds   writes   closes
   close_datas	   read_rsrcs   openrsrcs   GetFInfos   nfinfos   Creators   Types   Flagss   SetFInfo(   s   inps   outs   ofsss   ifps   ds   ofps   finfos   nfinfo(    (    s   /usr/lib/python2.2/binhex.pys   hexbinsF    
 
 
 c     s   t  i d j oJ t i d  \ }  } | o 	t i d  n 
|  i   } n t i
 d } t | | d  t | d | d  t i d  d  S(   Ns   macs   File to convert:i    i   s   .hqxs   .viahqx(   s   oss   names   macfss   PromptGetFiles   fsss   oks   syss   exits   as_pathnames   fnames   argvs   binhexs   hexbin(   s   fsss   oks   fname(    (    s   /usr/lib/python2.2/binhex.pys   _tests   s   __main__(#   s   __doc__s   syss   oss   structs   binasciis   __all__s	   Exceptions   Errors   ranges   _DID_HEADERs	   _DID_DATAs	   _DID_RSRCs   REASONABLY_LARGEs   LINELENs   chrs   RUNCHARs   names   macfss   MacOSs   openrfs   AttributeErrors   opens   FInfos   getfileinfos   openrsrcs   _Hqxcoderengines   _Rlecoderengines   BinHexs   binhexs   _Hqxdecoderengines   _Rledecoderengines   HexBins   hexbins   _tests   __name__(   s	   _DID_RSRCs   oss   macfss   _tests   MacOSs   openrfs   getfileinfos   syss   binhexs   _Rlecoderengines   REASONABLY_LARGEs   _DID_HEADERs   Errors   openrsrcs   HexBins   LINELENs   _Rledecoderengines   _Hqxdecoderengines   structs   __all__s   RUNCHARs   binasciis   hexbins   _Hqxcoderengines	   _DID_DATAs   FInfos   BinHex(    (    s   /usr/lib/python2.2/binhex.pys   ? sD   		'M,6f&