‡Æ
ÆMö9c       s$    d  Z    d k Z  d k Z  d k Z  d k Z  d k Z  d e f d „  ƒ  YZ " e d ƒ \ Z	 Z
 Z % d Z & d Z ' e d ƒ Z . e i d j ou / d k Z 0 d k Z 1 y 2 e i Z Wn 3 e j
 o 5 e Z n X7 d	 „  Z : d
 „  Z F d „  Z n9 R d f  d „  ƒ  YZ X 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   Errorc      s     RS(   N(    (    s#   /mit/python/lib/python2.0/binhex.pys   Error s   i   i €  i@   i   s   macc      s   7 8 t  i ƒ  Sd  S(   N(   s   macfss   FInfo(    s#   /mit/python/lib/python2.0/binhex.pys   FInfo7 s   c    sµ   : ; t  i |  ƒ i ƒ  } < t i i |  ƒ \ } } > t
 |  d ƒ } ? | i d d ƒ @ | i ƒ  } A t |  d ƒ } B | i d d ƒ C | i ƒ  } D | | | | 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   finfos   dirs   files   fps   dlens   rlens#   /mit/python/lib/python2.0/binhex.pys   getfileinfo: s   c    s@   F G | o H d } n J d | d } K t |  | ƒ Sd  S(   Ns   *rbs   *i    (   s   modes   openrfs   name(   s   names   modes#   /mit/python/lib/python2.0/binhex.pys   openrsrcF s   s   FInfoc      s   R S d „  Z  RS(   Nc    s+   S T d |  _ U d |  _ V d |  _ d  S(   Ns   ????i    (   s   selfs   Types   Creators   Flags(   s   selfs#   /mit/python/lib/python2.0/binhex.pys   __init__S s   (   s   __init__(    s#   /mit/python/lib/python2.0/binhex.pys   FInfoR s   c    s  X Y t  ƒ  } [ t |  ƒ } \ t |  ƒ i d ƒ } ] x[ | d ] rB } ^ | t i	 j o | d j  p t
 | ƒ d j o ` Pn qB Wb d | _ c | i d d ƒ d | i ƒ  } e | i ƒ  f t i i |  ƒ \ } } g t i | d d d	 ƒ } h | | | d f Sd  S(
   Ni   i    s    i   s   TEXTi   s   :s   -i   (   s   FInfos   finfos   opens   names   fps   reads   datas   cs   strings
   whitespaces   ords   Types   seeks   tells   dsizes   closes   oss   paths   splits   dirs   files   replace(   s   names   finfos   fps   datas   cs   dsizes   dirs   files#   /mit/python/lib/python2.0/binhex.pys   getfileinfoX s    	4s   openrsrcc      s5   j k d „  Z  n d „  Z q d „  Z t d „  Z RS(   Nc    s
   k l d  S(   N(    (   s   selfs   argss#   /mit/python/lib/python2.0/binhex.pys   __init__k s   c    s   n o d Sd  S(   Ns    (    (   s   selfs   argss#   /mit/python/lib/python2.0/binhex.pys   readn s   c    s
   q r d  S(   N(    (   s   selfs   argss#   /mit/python/lib/python2.0/binhex.pys   writeq s   c    s
   t u d  S(   N(    (   s   selfs#   /mit/python/lib/python2.0/binhex.pys   closet s   (   s   __init__s   reads   writes   close(    s#   /mit/python/lib/python2.0/binhex.pys   openrsrcj s   s   _Hqxcoderenginec      s>   w 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   ofps#   /mit/python/lib/python2.0/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   todos#   /mit/python/lib/python2.0/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   firsts   lasts#   /mit/python/lib/python2.0/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   selfs#   /mit/python/lib/python2.0/binhex.pys   close– s
   #(   s   __doc__s   __init__s   writes   _flushs   close(    s#   /mit/python/lib/python2.0/binhex.pys   _Hqxcoderenginew s
   	s   _Rlecoderenginec      s2   ž 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   ofps#   /mit/python/lib/python2.0/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   rledatas#   /mit/python/lib/python2.0/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   rledatas#   /mit/python/lib/python2.0/binhex.pys   close­ s
   (   s   __doc__s   __init__s   writes   close(    s#   /mit/python/lib/python2.0/binhex.pys   _Rlecoderenginež s   	s   BinHexc      se   ´ µ 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   types   ofps   ofnames   opens   oss   names   macfss   FSSpecs   fsss   SetCreatorTypes   writes   _Hqxcoderengines   hqxers   _Rlecoderengines   selfs   crcs   finfos   Nones   FInfos   dlens   rlens
   _writeinfos   _DID_HEADERs   state(
   s   selfs   .2s   ofps   names   finfos   dlens   rlens   ofnames   fsss   hqxers#   /mit/python/lib/python2.0/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   nls   ds   d2s   d3s   d4s   infos#   /mit/python/lib/python2.0/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   datas#   /mit/python/lib/python2.0/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   selfs#   /mit/python/lib/python2.0/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   datas#   /mit/python/lib/python2.0/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   selfs#   /mit/python/lib/python2.0/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   datas#   /mit/python/lib/python2.0/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   selfs#   /mit/python/lib/python2.0/binhex.pys   closeô s   (   s   __init__s
   _writeinfos   _writes	   _writecrcs   writes
   close_datas
   write_rsrcs   close(    s#   /mit/python/lib/python2.0/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   finfos   ofps   ifps   ds#   /mit/python/lib/python2.0/binhex.pys   binhexs*    
  
 s   _Hqxdecoderenginec      s2   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   ifps#   /mit/python/lib/python2.0/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   decdatas   wtds   datas
   decdatacurs   newdatas#   /mit/python/lib/python2.0/binhex.pys   reads2   		   
c    s   @A|  i i ƒ  d  S(   N(   s   selfs   ifps   close(   s   selfs#   /mit/python/lib/python2.0/binhex.pys   close@s   (   s   __doc__s   __init__s   reads   close(    s#   /mit/python/lib/python2.0/binhex.pys   _Hqxdecoderengines   	"s   _Rledecoderenginec      s>   C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   ifps#   /mit/python/lib/python2.0/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   rvs#   /mit/python/lib/python2.0/binhex.pys   readLs
   !c    sk  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 } nZ 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    i   s    i   i   (   s   selfs
   pre_buffers   ifps   reads   wtds   eofs   post_buffers   binasciis   rledecode_hqxs   lens   marks   RUNCHAR(   s   selfs   wtds   marks#   /mit/python/lib/python2.0/binhex.pys   _fillSs"   # #c    s   vw|  i i ƒ  d  S(   N(   s   selfs   ifps   close(   s   selfs#   /mit/python/lib/python2.0/binhex.pys   closevs   (   s   __doc__s   __init__s   reads   _fills   close(    s#   /mit/python/lib/python2.0/binhex.pys   _RledecoderengineCs
   	#s   HexBinc      se   y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   chs   dummys   hqxifps#   /mit/python/lib/python2.0/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   datas#   /mit/python/lib/python2.0/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   filecrcs#   /mit/python/lib/python2.0/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   lens   fnames   rests   types   creators   flagss#   /mit/python/lib/python2.0/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   rvs#   /mit/python/lib/python2.0/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   dummys#   /mit/python/lib/python2.0/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   ns#   /mit/python/lib/python2.0/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   dummys#   /mit/python/lib/python2.0/binhex.pys   closeØs
   (   s   __init__s   _reads	   _checkcrcs   _readheaders   reads
   close_datas	   read_rsrcs   close(    s#   /mit/python/lib/python2.0/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   ifps   finfos   ofsss   ofps   ds   nfinfos#   /mit/python/lib/python2.0/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   fnames#   /mit/python/lib/python2.0/binhex.pys   _tests   s   __main__(#   s   __doc__s   syss   oss   structs   strings   binasciis	   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#   /mit/python/lib/python2.0/binhex.pys   ? sD   		'M,6f&