
Sa¸2c      sÌ     k  Z   d  Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z	  d	 Z
  d
 Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z  d Z   d Z ! d Z " d Z # d Z $ d Z ( e ƒ  Z ) e Z  * d „  Z! 5 d Z" 6 d Z# 9 d d „ Z$ K d d  „ Z% R d! „  Z& r d" „  Z' x d# „  Z( ‰ d$ „  Z) Ž d% „  Z* – d& „  Z+ ¾ e, d' j o ¿ e+ ƒ  n d( S()   s   1/s   gopher.micro.umn.eduiF   s   0s   1s   2s   3s   4s   5s   6s   7s   8s   9s   +s   ss   es   cs   hs   Ts   Ms   Is   ws   qs   gs   :s   ;s   <c   s   * + , t  oL - xB t d - r5 } . | d  d j o / | d t  t | ƒ <n q Wn 0 t  i |  ƒ o 1 t  |  Sn 2 d |  Sd  S(   Ni    i   s   A_s   TYPE=(   s   _type_to_name_maps   _namess   names   evals   has_keys   gtype(   s   gtypes   names   /usr/lib/python1.4/gopherlib.pys   type_to_names   
s   	c   s'  9 : k  } ; k } < | oW = | i | d ƒ } > | d j o. ? | |  | i | | d ƒ f \ } } n n @ | o A t } n3 B t | ƒ t d ƒ j o C | i | ƒ } n D | i  | i	 | i
 ƒ } E | i | | ƒ F | i |  t ƒ G | i d ƒ H | i d ƒ Sd  S(   Ns   :i    i   s    s   rb(   s   sockets   strings   ports   finds   hosts   is   atois   DEF_PORTs   types   AF_INETs   SOCK_STREAMs   ss   connects   sends   selectors   CRLFs   shutdowns   makefile(   s   selectors   hosts   ports   sockets   strings   is   ss   /usr/lib/python1.4/gopherlib.pys   send_selectori    c   s"   K L t  |  d | | | ƒ Sd  S(   Ns   	(   s   send_selectors   selectors   querys   hosts   port(   s   selectors   querys   hosts   ports   /usr/lib/python1.4/gopherlib.pys
   send_queryc   sµ  R S k  } T g  } U xU d o„V |  i ƒ  } W | o X d GHY Pn Z | d t j o [ | d  } n( \ | d t j o ] | d  } n ^ | d j o _ Pn ` | o a d GHb q n c | d } d | i | d t ƒ } e t
 | ƒ d j  o f d G| Gd	 GHg q n h t
 | ƒ d j o3 i | d d
 g j o j d G| d Gd	 GHn n l | i d ƒ m | i d | ƒ n | i | ƒ q Wo | Sd  S(   Ni   s   (Unexpected EOF from server)i   s   .s   (Empty line from server)i    i   s   (Bad line from server:s   )s   +s   (Extra info from server:s    (   s   strings   lists   fs   readlines   lines   CRLFs   gtypes   splitfieldss   TABs   partss   lens   appends   insert(   s   fs   strings   lists   lines   gtypes   partss   /usr/lib/python1.4/gopherlib.pys   get_directoryc   s*   r s g  } t t |  | i ƒ u | Sd  S(   N(   s   lists   get_alt_textfiles   fs   append(   s   fs   lists   /usr/lib/python1.4/gopherlib.pys   get_textfilec   sÞ   x y xÑ y d oÆ z |  i ƒ  } { | o | d GH} Pn ~ | d t j o  | d  } n( € | d t j o  | d  } n ‚ | d j o ƒ Pn „ | d  d j o … | d } n † | | ƒ q	 Wd  S(   Ni   s   (Unexpected EOF from server)i   s   .s   ..(   s   fs   readlines   lines   CRLFs   func(   s   fs   funcs   lines   /usr/lib/python1.4/gopherlib.pys   get_alt_textfilec   s   ‰ Š |  i ƒ  } ‹ | Sd  S(   N(   s   fs   reads   data(   s   fs   datas   /usr/lib/python1.4/gopherlib.pys
   get_binaryc   sN   Ž  xA  d o6  |  i | ƒ } ‘ | o ’ Pn “ | | ƒ q	 Wd  S(   Ni   (   s   fs   reads	   blocksizes   datas   func(   s   fs   funcs	   blocksizes   datas   /usr/lib/python1.4/gopherlib.pys   get_alt_binaryc    sC  – — k  }  ˜ k } ™ | i |  i d d ƒ \ } } š t } › | d } œ t }  t
 } ž | o Ÿ | d }   | d } n ¡ | o³ ¢ | d } £ | d } ¤ t | ƒ d j o ¥ | d | f \ } } n2 § d } ¨ | o © | d } ª | d } n « d } ¬ | o ­ | d } ® | d } n n ¯ | t j o ° t | | | ƒ }	 n ² t | | ƒ }	 ³ | t j o4 ´ t |	 ƒ }
 µ x |
 d µ r } µ | GHqªWn} ¶ | t t f j o4 · t |	 ƒ }
 ¸ x |
 d ¸ r } ¸ | GHqôWn3 º t |	 ƒ } » d Gt | ƒ Gd G| d  d  GHd  S(   Ni   s    i    s   binary data:s   bytes:id   i(   (   s   syss   getopts   argvs   optss   argss   DEF_SELECTORs   selectors   types   DEF_HOSTs   hosts   DEF_PORTs   ports   lens   querys   A_INDEXs
   send_querys   fs   send_selectors   A_TEXTs   get_textfiles   lists   items   A_MENUs   get_directorys
   get_binarys   data(   s   syss   getopts   optss   argss   selectors   types   hosts   ports   querys   fs   lists   items   datas   /usr/lib/python1.4/gopherlib.pys   tests   __main__N(-   s   strings   DEF_SELECTORs   DEF_HOSTs   DEF_PORTs   A_TEXTs   A_MENUs   A_CSOs   A_ERRORs   A_MACBINHEXs
   A_PCBINHEXs   A_UUENCODEDs   A_INDEXs   A_TELNETs   A_BINARYs   A_DUPLICATEs   A_SOUNDs   A_EVENTs
   A_CALENDARs   A_HTMLs   A_TN3270s   A_MIMEs   A_IMAGEs   A_WHOISs   A_QUERYs   A_GIFs   A_WWWs   A_PLUS_IMAGEs   A_PLUS_MOVIEs   A_PLUS_SOUNDs   dirs   _namess   Nones   _type_to_name_maps   type_to_names   CRLFs   TABs   send_selectors
   send_querys   get_directorys   get_textfiles   get_alt_textfiles
   get_binarys   get_alt_binarys   tests   __name__(    s   /usr/lib/python1.4/gopherlib.pys   ?