ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     
V~gc           @   s   d  d l  m Z m Z m Z d e j f d     YZ d e f d     YZ d e f d     YZ d e f d	     YZ	 d
 d  Z
 d S(   i   (   t   grammart   tokent   tokenizet   PgenGrammarc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR      s   t   ParserGeneratorc           B   s   e  Z d 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 d  Z d   Z d   Z RS(   c         C   s   d  } | d  k r* t |  } | j } n  | |  _ | |  _ t j | j  |  _ |  j	   |  j
   \ |  _ |  _ | d  k	 r |   n  i  |  _ |  j   d  S(   N(   t   Nonet   opent   closet   filenamet   streamR   t   generate_tokenst   readlinet	   generatort   gettokent   parset   dfast   startsymbolt   firstt   addfirstsets(   t   selfR
   R   t   close_stream(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   __init__   s    		

	c         C   s  t    } |  j j   } | j   | j |  j  | j d |  j  x; | D]3 } d t | j  } | | j | <| | j	 | <qL Wx | D] } |  j | } g  } x | D] } g  } xK t
 | j j    D]4 \ }	 }
 | j |  j | |	  | j |
  f  q W| j r,| j d | j |  f  n  | j |  q W| j j |  | |  j | |  f | j | j | <q W| j |  j | _ | S(   Ni    i   (   R   R   t   keyst   sortt   removeR   t   insertt   lent   symbol2numbert   number2symbolt   sortedt   arcst	   iteritemst   appendt
   make_labelt   indext   isfinalt   statest
   make_firstt   start(   R   t   ct   namest   namet   it   dfaR&   t   stateR    t   labelt   next(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   make_grammar   s.    	
",	*c         C   sJ   |  j  | } i  } x0 t |  D]" } |  j | |  } d | | <q  W| S(   Ni   (   R   R   R#   (   R   R)   R+   t   rawfirstR   R/   t   ilabel(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR'   4   s    c         C   s  t  | j  } | d j   r| | j k ry | | j k rH | j | S| j j | j | d  f  | | j | <| Sqt t | d   } t	 | t
 t f  s t |   | t j k s t |   | | j k r | j | S| j j | d  f  | | j | <| Sn | d d k s't |   t |  } | d j   r| | j k r]| j | S| j j t j | f  | | j | <| SnN t j | } | | j k r| j | S| j j | d  f  | | j | <| Sd  S(   Ni    t   "t   '(   R4   R5   (   R   t   labelst   isalphaR   t   symbol2labelR"   R   t   getattrR   t
   isinstancet   intt   longt   AssertionErrort   tok_namet   tokenst   evalt   keywordst   NAMER    t   opmap(   R   R)   R/   R3   t   itokent   value(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR#   =   s<    !c         C   sM   |  j  j   } | j   x- | D]% } | |  j k r  |  j |  q  q  Wd  S(   N(   R   R   R   R   t	   calcfirst(   R   R*   R+   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR   k   s
    
c      	   C   sj  |  j  | } d  |  j | <| d } i  } i  } x | j j   D] \ } } | |  j  k r | |  j k r |  j | } | d  k r t d |   q n |  j |  |  j | } | j |  | | | <q@ d | | <i d | 6| | <q@ Wi  }	 xd | j   D]V \ } }
 xG |
 D]? } | |	 k rGt d | | | |	 | f   n  | |	 | <qWq W| |  j | <d  S(   Ni    s   recursion for rule %ri   sA   rule %s is ambiguous; %s is in the first sets of %s as well as %s(   R   R   R   R    R!   t
   ValueErrorRF   t   update(   R   R+   R-   R.   t   totalsett   overlapcheckR/   R0   t   fsett   inverset   itsfirstt   symbol(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRF   s   s2    

c   	      C   s   i  } d  } x |  j t j k r x  |  j t j k rC |  j   q$ W|  j t j  } |  j t j d  |  j	   \ } } |  j t j  |  j
 | |  } t |  } |  j |  t |  } | | | <| d  k r | } q q W| | f S(   Nt   :(   R   t   typeR   t	   ENDMARKERt   NEWLINER   t   expectRB   t   OPt	   parse_rhst   make_dfaR   t   simplify_dfa(	   R   R   R   R+   t   at   zR-   t   oldlent   newlen(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR      s"    
c            sD  t  | t  s t  t  | t  s* t    f d   }   f d     t | |  |  g } x | D] } i  } xS | j D]H } x? | j D]4 \ } }	 | d  k	 r   |	 | j | i    q q Wq} Wxp t | j	    D]\ \ } }
 x= | D] } | j |
 k r Pq q Wt |
 |  } | j
 |  | j | |  q Wqg W| S(   Nc            s   i  }   |  |  | S(   N(    (   R.   t   base(   t
   addclosure(    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   closure   s    c            si   t  |  t  s t  |  | k r% d  Sd | |  <x3 |  j D]( \ } } | d  k r9   | |  q9 q9 Wd  S(   Ni   (   R:   t   NFAStateR=   R    R   (   R.   R\   R/   R0   (   R]   (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR]      s    
(   R:   R_   R=   t   DFAStatet   nfasetR    R   t
   setdefaultR   R!   R"   t   addarc(   R   R(   t   finishR^   R&   R.   R    t   nfastateR/   R0   Ra   t   st(    (   R]   s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRV      s&    $c   
      C   s   d G| GH| g } x t  |  D] \ } } d G| G| | k rE d pH d GHxu | j D]j \ } } | | k r~ | j |  }	 n t |  }	 | j |  | d  k r d |	 GHqT d | |	 f GHqT Wq Wd  S(   Ns   Dump of NFA fors     States   (final)t    s	       -> %ds       %s -> %d(   t	   enumerateR    R$   R   R"   R   (
   R   R+   R(   Rd   t   todoR,   R.   R/   R0   t   j(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   dump_nfa   s    		c         C   s   d G| GHxt t  |  D]f \ } } d G| G| j r9 d p< d GHx; t | j j    D]$ \ } } d | | j |  f GHqT Wq Wd  S(   Ns   Dump of DFA fors     States   (final)Rg   s       %s -> %d(   Rh   R%   R   R    R!   R$   (   R   R+   R-   R,   R.   R/   R0   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   dump_dfa   s
    	"c         C   s   t  } x | r t } x t |  D]x \ } } xi t | d t |   D]N } | | } | | k rH | | =x | D] } | j | |  qr Wt  } PqH qH Wq" Wq	 Wd  S(   Ni   (   t   Truet   FalseRh   t   rangeR   t
   unifystate(   R   R-   t   changesR,   t   state_iRj   t   state_jR.   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRW      s    	 
c         C   s   |  j    \ } } |  j d k r+ | | f St   } t   } | j |  | j |  xI |  j d k r |  j   |  j    \ } } | j |  | j |  qZ W| | f Sd  S(   Nt   |(   t	   parse_altRE   R_   Rc   R   (   R   RX   RY   t   aat   zz(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRU      s    
		
c         C   sr   |  j    \ } } xS |  j d k s? |  j t j t j f k rg |  j    \ } } | j |  | } q W| | f S(   Nt   (t   [(   Rx   Ry   (   t
   parse_itemRE   RP   R   RB   t   STRINGRc   (   R   RX   t   bR)   t   d(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRu   
  s    
c         C   s   |  j  d k rU |  j   |  j   \ } } |  j t j d  | j |  | | f S|  j   \ } } |  j  } | d k r | | f S|  j   | j |  | d k r | | f S| | f Sd  S(   NRy   t   ]t   +t   *(   R   R   (   RE   R   RU   RS   R   RT   Rc   t
   parse_atom(   R   RX   RY   RE   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRz     s    

	


c         C   s   |  j  d k rH |  j   |  j   \ } } |  j t j d  | | f S|  j t j t j f k r t	   } t	   } | j
 | |  j   |  j   | | f S|  j d |  j |  j   d  S(   NRx   t   )s+   expected (...) or NAME or STRING, got %s/%s(   RE   R   RU   RS   R   RT   RP   RB   R{   R_   Rc   t   raise_error(   R   RX   RY   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR   (  s    

		

	c         C   sc   |  j  | k s* | d  k	 rL |  j | k rL |  j d | | |  j  |  j  n  |  j } |  j   | S(   Ns   expected %s/%s, got %s/%s(   RP   R   RE   R   R   (   R   RP   RE   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRS   9  s    *		
c         C   si   |  j  j   } x/ | d t j t j f k r@ |  j  j   } q W| \ |  _ |  _ |  _ |  _ |  _	 d  S(   Ni    (
   R   R0   R   t   COMMENTt   NLRP   RE   t   begint   endt   line(   R   t   tup(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR   A  s    c         G   ss   | r@ y | | } Wq@ d j  | g t t |   } q@ Xn  t | |  j |  j d |  j d |  j f   d  S(   Nt    i    i   (   t   joint   mapt   strt   SyntaxErrorR
   R   R   (   R   t   msgt   args(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR   H  s    &N(   R   R   R   R   R1   R'   R#   R   RF   R   RV   Rk   Rl   RW   RU   Ru   Rz   R   RS   R   R   (    (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR   
   s$   				.				$					
			R_   c           B   s   e  Z d    Z d d  Z RS(   c         C   s   g  |  _  d  S(   N(   R    (   R   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR   S  s    c         C   sP   | d  k s! t | t  s! t  t | t  s6 t  |  j j | | f  d  S(   N(   R   R:   R   R=   R_   R    R"   (   R   R0   R/   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRc   V  s    !N(   R   R   R   R   Rc   (    (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR_   Q  s   	R`   c           B   s2   e  Z d    Z d   Z d   Z d   Z d Z RS(   c         C   sp   t  | t  s t  t  t |  j   t  s6 t  t  | t  sK t  | |  _ | | k |  _ i  |  _ d  S(   N(	   R:   t   dictR=   t   iterR0   R_   Ra   R%   R    (   R   Ra   t   final(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR   ]  s    !	c         C   sP   t  | t  s t  | |  j k s* t  t  | t  s? t  | |  j | <d  S(   N(   R:   R   R=   R    R`   (   R   R0   R/   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRc   e  s    c         C   s@   x9 |  j  j   D]( \ } } | | k r | |  j  | <q q Wd  S(   N(   R    R!   (   R   t   oldt   newR/   R0   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyRp   k  s    c         C   s   t  | t  s t  |  j | j k r+ t St |  j  t | j  k rM t Sx9 |  j j   D]( \ } } | | j j |  k	 r] t Sq] Wt	 S(   N(
   R:   R`   R=   R%   Rn   R   R    R!   t   getRm   (   R   t   otherR/   R0   (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   __eq__p  s    N(   R   R   R   Rc   Rp   R   R   t   __hash__(    (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyR`   [  s
   				s   Grammar.txtc         C   s   t  |   } | j   S(   N(   R   R1   (   R
   t   p(    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   generate_grammar  s    N(   Rg   R    R   R   t   GrammarR   t   objectR   R_   R`   R   (    (    (    s7   /opt/alt/python27/lib64/python2.7/lib2to3/pgen2/pgen.pyt   <module>   s    H
%