łň
\Kc        0   @   s  d  Z  d d k Td d k Z d d k Z d d k Z d d k Z d e f d     YZ d d k l	 Z	 l
 Z
 d d k l Z l Z l Z d   Z d	 d
  Z d   Z d   Z d   Z d f  d     YZ e i e i e i e i e i e i e i e i e i e i e i e i e i  e i! e i" e i# g Z$ h  d e i% <d e i& <d e i' <d e i( <d e i) <d e i* <d e i+ <Z, e i- e i. e i/ e i0 e i1 e i2 e i3 e i e i4 e i5 e i6 e i7 e i8 e i9 e i: e i; e i< e i= e i> e i? e i@ e iA e iB e iC e iD e i e i e i e i e i e i e iE e i e i e i e i e i  e i! e i" e i# e iF g) ZG eH e d  o eG iI e iJ  n eH e d  o eG iI e iK  n e i e i e i e i e i e i e i e i e i e i  e i! e i" g ZL h  ZM x' e iN iO   D] \ ZP ZQ eQ eM eP <q3Wx' e iR iO   D] \ ZP ZQ eQ eM eP <q]Wd   ZS d S(   sî   Parse tree transformation module.

Transforms Python source code into an abstract syntax tree (AST)
defined in the ast module.

The simplest ways to invoke this module are via parse and parseFile.
parse(buf) -> AST
parseFile(path) -> AST
i˙˙˙˙(   t   *Nt   WalkerErrorc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR   "   s   (   t
   CO_VARARGSt   CO_VARKEYWORDS(   t	   OP_ASSIGNt	   OP_DELETEt   OP_APPLYc         C   s3   t  |  d  } | i   d } | i   t |  S(   Nt   Us   
(   t   opent   readt   closet   parse(   t   patht   ft   src(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   parseFile(   s    
t   execc         C   s_   | d j p | d j o t    i |   Sn. | d j o t    i |   Sn t d   d  S(   NR   t   singlet   evals4   compile() arg 3 must be 'exec' or 'eval' or 'single'(   t   Transformert
   parsesuitet	   parseexprt
   ValueError(   t   buft   mode(    (    s*   /usr/lib/python2.5/compiler/transformer.pyR   2   s
    c         C   sľ   g  } x¨ |  D]  } t  | d  o | i | i    q t |  t d  j o | i t t |    q t |  t g   j o | i t |   q | i |  q W| S(   Nt   asList(   NN(   t   hasattrt   appendR   t   typet   Nonet   tuple(   t   nodest   lt   item(    (    s*   /usr/lib/python2.5/compiler/transformer.pyR   ;   s     c         C   sn   t  |  d t  p |  d Sn xG |  d D]; } t  | t  o% t |  } | d  j	 o | Sqf q+ q+ Wd  S(   Ni   i   (   t
   isinstanceR    t   extractLineNoR   (   t   astt   childt   lineno(    (    s*   /usr/lib/python2.5/compiler/transformer.pyR%   I   s     c          G   s{   |  d } t  i |  oJ y t  | |  d   SWqw t j
 o! t  | Gt |   G|  GH  qw Xn t d t |    d  S(   Ni    i   s$   Can't find appropriate Node type: %s(   R!   t   has_keyt	   TypeErrort   lenR   t   str(   t   argst   kind(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   NodeS   s    
R   c           B   st  e  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 d   Z d   Z e Z e Z e 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*   Z0 d+   Z1 d,   Z2 d-   Z3 d.   Z4 d/   Z5 d0   Z6 d1   Z7 d2   Z8 e8 Z9 e8 Z: e8 Z; d3   Z< d4   Z= d5   Z> e> Z? d6   Z@ d7   ZA d8   ZB d9   ZC d:   ZD d;   ZE d<   ZF d=   ZG d>   ZH d?   ZI d@   ZJ dA   ZK dB   ZL dC   ZM dD   ZN dE   ZO dF   ZP dG   ZQ dH   ZR dI   ZS dJ   ZT dK   ZU dL   ZV dM   ZW dN   ZX dO   ZY dP   ZZ dQ   Z[ dR   Z\ dS   Z] dT   Z^ dU   Z_ dV   Z` dW   Za dX   Zb dY   Zc dZ   Zd d[   Ze d\   Zf d]   Zg d^   Zh d_   Zi d`   Zj da   Zk db   Zl dc   Zm en eo dd  o de   Zp df   Zq dg   Zr n
 dh   Zp en eo di  o dj   Zs dk   Zt n dl   Zu dm   Zv dn   Zw do   Zx dp   Zy dq   Zz dr   Z{ ds   Z| dt   Z} dv du  Z RS(w   sę   Utility object for transforming Python parse trees.

    Exposes the following methods:
        tree = transform(ast_tree)
        tree = parsesuite(text)
        tree = parseexpr(text)
        tree = parsefile(fileob | filename)
    c         C   sĺ   h  |  _  xG t i i   D]6 \ } } t |  |  o t |  |  |  i  | <q q W|  i |  i  t i <h  |  i	 t i
 <|  i t i <|  i t i <|  i t i <|  i t i <|  i t i <|  i t i <|  _ d  |  _ d  S(   N(   t	   _dispatcht   symbolt   sym_namet   itemsR   t   getattrt   com_NEWLINEt   tokent   NEWLINEt	   atom_lpart   LPARt	   atom_lsqbt   LSQBt   atom_lbracet   LBRACEt   atom_backquotet	   BACKQUOTEt   atom_numbert   NUMBERt   atom_stringt   STRINGt	   atom_namet   NAMEt   _atom_dispatchR   t   encoding(   t   selft   valuet   name(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   __init__i   s    	 c         C   sF   t  | t  p t  | t  p t i | d d } n |  i |  S(   s,   Transform an AST into a modified parse tree.t	   line_infoi   (   R$   R    t   listt   parsert	   ast2tuplet   compile_node(   RH   t   tree(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   transformy   s     c         C   s   |  i  t i |   S(   s6   Return a modified parse tree for the given suite text.(   RR   RN   t   suite(   RH   t   text(    (    s*   /usr/lib/python2.5/compiler/transformer.pyR      s    c         C   s   |  i  t i |   S(   s;   Return a modified parse tree for the given expression text.(   RR   RN   t   expr(   RH   RT   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR      s    c         C   s<   t  |  t  d  j o t |  } n |  i | i    S(   s@   Return a modified parse tree for the contents of the given file.t    (   R   R
   R   R   (   RH   t   file(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   parsefile   s    c      	   C   s0  | d } | t  i j o% | d |  _ | d } | d } n | t  i j o |  i | d  Sn | t  i j o |  i | d  Sn | t  i j o |  i | d  Sn | t  i j o |  i | d  Sn | t  i j o |  i | d  Sn | t  i j o |  i | d  Sn t	 d | f  d  S(   Ni    i   i   s   unexpected node type(
   R1   t   encoding_declRG   t   single_inputt
   file_inputt
   eval_inputt   lambdeft   funcdeft   classdefR   (   RH   t   nodet   n(    (    s*   /usr/lib/python2.5/compiler/transformer.pyRP      s$    

c         C   s:   | d d } | t  i j o |  i | d  Sn t   S(   Ni    (   R6   R7   t   com_stmtt   Pass(   RH   R`   Ra   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRZ   Ş   s    c         C   s   |  i  | t i  } | d  j	 o
 d } n d } g  } xN | | D]B } | d t i j o( | d t i j o |  i | |  qC qC Wt | t	 |   S(   Ni   i    (
   t   get_docstringR1   R[   R   R6   t	   ENDMARKERR7   t   com_append_stmtt   Modulet   Stmt(   RH   t   nodelistt   doct   it   stmtsR`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR[   ´   s    
 (c         C   s   t  |  i | d   S(   Ni    (   t
   Expressiont   com_node(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR\   Ŕ   s    c         C   sĆ   t  |  } | d j o | d d j p t  |  i |  } d } xy | | j  ok | | d t i j p t  | | d d t i j p t  t | | | d d  } | d 7} qI W| S(   Ni   i   i    (   R+   t   AssertionErrorRD   R6   t   DOTRE   t   Getattr(   RH   Ri   t   listlenR#   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   decorator_nameĹ   s    % #c         C   sä   t  |  d j p t  | d d t i j p t  | d d t i j p t  | d d t i j p t  |  i | d d  } t  |  d j o9 | d d t i j p t  |  i	 | | d  } n | } | S(	   Ni   i   i   i    i˙˙˙˙i   i   (   i   i   i   (
   R+   Ro   R6   t   ATR7   R1   t   dotted_nameRs   R9   t   com_call_function(   RH   Ri   t   funcnameRU   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   decoratorÓ   s    c         C   sV   g  } xC | D]; } | d t  i j p t  | i |  i | d   q Wt |  S(   Ni    i   (   R1   Rx   Ro   R   t
   Decorators(   RH   Ri   R3   t   dec_nodelist(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   decoratorsä   s     c         C   ss  t  |  d j o: | d d t i j p t  |  i | d d  } n! t  |  d j p t  d  } | d d } | d d } | d d } | d t i j o  |  i | d  \ } } } n d
 } } d } |  i | d  }	 |  i | d  }
 |	 d  j	 oC t	 |
 t
  p t  t	 |
 i d t  p t  |
 i d =n t | | | | | |	 |
 d	 | S(   Ni   i    i   i   iü˙˙˙i   iý˙˙˙i˙˙˙˙R(   (    (   R+   R1   R{   Ro   R   t   varargslistt   com_arglistRd   Rn   R$   Rh   R!   t   Discardt   Function(   RH   Ri   R{   R(   RJ   R-   t   namest   defaultst   flagsRj   t   code(    (    s*   /usr/lib/python2.5/compiler/transformer.pyR^   ě   s(     
c      	   C   s   | d d t  i j o$ |  i | d d  \ } } } n d } } d } |  i | d  } t | | | | d | d d S(   Ni   i    i   i˙˙˙˙R(   (    (   R1   R|   R}   Rn   t   Lambda(   RH   Ri   R   R   R   R   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR]     s    $
c         C   sü   | d d } |  i  | d  } | d d t i j o
 g  } n6 | d d t i j o
 g  } n |  i | d  } |  i | d  } | d  j	 oC t | t  p t	  t | i
 d t  p t	  | i
 d =n t | | | | d | d d S(   Ni   i˙˙˙˙i   i    i   R(   (   Rd   R6   t   COLONt   RPARt	   com_basesRn   R   R$   Rh   Ro   R!   R~   t   Class(   RH   Ri   RJ   Rj   t   basesR   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR_     s    

c         C   s   |  i  | d  S(   Ni    (   Rb   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   stmt1  s    c         C   sG   g  } x4 t  d t |  d  D] } |  i | | |  q Wt |  S(   Ni    i   (   t   rangeR+   Rf   Rh   (   RH   Ri   Rl   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   simple_stmt8  s
     c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   parameters?  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR|   B  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   fpdefE  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   fplistH  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRu   K  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   comp_opN  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   trailerQ  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   sliceopT  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   argumentW  s    c      	   C   s  | d } |  i  |  | d  } t |  d j o t | d | i Sn | d d t i j oi g  } xA t d t |  d d  D]# } | i |  i | | t	   q Wt
 | | d | d d SnE |  i | d  } |  i | d  } t | | d | d | d St d  d  S(   Ni˙˙˙˙i   R(   i    i   s   can't get here(   t   lookup_nodeR+   R~   R(   R6   t   EQUALR   R   t
   com_assignR   t   Assignt   com_augassignt   com_augassign_opt	   AugAssignR   (   RH   Ri   t   ent   exprNodet   nodeslRk   t   lvalt   op(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   expr_stmt_  s    
 !c         C   s+  g  } t  |  d j o d } d  } nt | d d t i j oO t  |  d j p | d d t i j p t  |  i | d  } d } n d  } d } x: t | t  |  d  D]  } | i |  i | |   qľ W| d d t i j o t	 | | d | d d Sn t
 | | d | d d S(   Ni   i    i   i   i   i˙˙˙˙R(   (   R+   R   R6   t
   RIGHTSHIFTt   COMMARo   Rn   R   R   t   Printt   Printnl(   RH   Ri   R3   t   startt   destRk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   print_stmtp  s"    

 c         C   s   |  i  | d t  S(   Ni   (   R   R   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   del_stmt  s    c         C   s   t  d | d d  S(   NR(   i    i   (   Rc   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   pass_stmt  s    c         C   s   t  d | d d  S(   NR(   i    i   (   t   Break(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   break_stmt  s    c         C   s   t  d | d d  S(   NR(   i    i   (   t   Continue(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   continue_stmt  s    c         C   sZ   t  |  d j  o" t t d   d | d d Sn t |  i | d  d | d d S(   Ni   R(   i    i   (   R+   t   Returnt   ConstR   Rn   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   return_stmt  s    "c         C   s&   |  i  | d  } t | d | i S(   Ni    R(   (   Rn   R~   R(   (   RH   Ri   RU   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   yield_stmt  s    c         C   sN   t  |  d j o |  i | d  } n t d   } t | d | d d S(   Ni   R(   i    i   (   R+   Rn   RŻ   R   t   Yield(   RH   Ri   RI   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   yield_expr  s    c         C   sŽ   t  |  d j o |  i | d  } n d  } t  |  d j o |  i | d  } n d  } t  |  d j o |  i | d  } n d  } t | | | d | d d S(   Ni   i   i   R(   i    i   (   R+   Rn   R   t   Raise(   RH   Ri   t   expr3t   expr2t   expr1(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   raise_stmtĄ  s    c         C   s+   t  |  d j p t  |  i | d  S(   Ni   i    (   R+   Ro   Rn   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   import_stmtą  s    c         C   s%   t  |  i | d  d | d d S(   Ni   R(   i    i   (   t   Importt   com_dotted_as_names(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   import_nameś  s    c         C   sA  | d d d j p t   d } x$ | | d d j o | d 7} q% W| d } | | d t i j o! |  i | |  } | d 7} n d } | | d d j p t   | | d d t i j o% t | d
 g | d | d d	 SnO | | d | | d d t i j } t | |  i	 |  | d | d d	 Sd  S(   Ni    i   t   fromt   .RV   t   importR    R(   i   (   R    N(
   Ro   R1   Ru   t   com_dotted_nameR6   t   STARt   FromR   R9   t   com_import_as_names(   RH   Ri   t   idxt   levelt   fromnameR`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   import_fromť  s"     
'c         C   sV   g  } x5 t  d t |  d  D] } | i | | d  q Wt | d | d d S(   Ni   i   R(   i    (   R   R+   R   t   Global(   RH   Ri   R   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   global_stmtŃ  s
     c         C   s   |  i  | d  } t |  d j oG |  i  | d  } t |  d j o |  i  | d  } qw d  } n d  } } t | | | d | d d S(	   Ni   i   i   i   i   R(   i    i   (   Rn   R+   R   t   Exec(   RH   Ri   Rˇ   Rś   Rľ   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   exec_stmtŘ  s    

c         C   s^   |  i  | d  } t |  d j o |  i  | d  } n d  } t | | d | d d S(   Ni   i   i   R(   i    i   (   Rn   R+   R   t   Assert(   RH   Ri   Rˇ   Rś   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   assert_stmtć  s
    c         C   s˝   g  } xe t  d t |  d d  D]G } |  i | | d  } |  i | | d  } | i | | f  q# Wt |  d d j o |  i | d  } n d  } t | | d | d d S(   Ni    i   i   i   i˙˙˙˙R(   i   (   R   R+   Rn   R   R   t   If(   RH   Ri   t   testsRk   t   testNodet	   suiteNodet   elseNode(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   if_stmtď  s     c         C   st   |  i  | d  } |  i  | d  } t |  d j o |  i  | d  } n d  } t | | | d | d d S(   Ni   i   i   i   R(   i    i   (   Rn   R+   R   t   While(   RH   Ri   RĐ   t   bodyNodeRŇ   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   while_stmtţ  s    c         C   s   |  i  | d t  } |  i | d  } |  i | d  } t |  d j o |  i | d  } n d  } t | | | | d | d d S(   Ni   i   i   i   R(   i    i   (   R   R   Rn   R+   R   t   For(   RH   Ri   t
   assignNodet   listNodeRŐ   RŇ   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   for_stmt  s    c         C   s   |  i  |  S(   N(   t   com_try_except_finally(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   try_stmt  s    c         C   s   |  i  |  S(   N(   t   com_with(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt	   with_stmt  s    c         C   s   |  i  |  S(   N(   t   com_with_var(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   with_var   s    c         C   sq   t  |  d j o |  i | d  Sn g  } x6 | D]. } | d t i j o |  i | |  q5 q5 Wt |  S(   Ni   i    (   R+   Rb   R1   R   Rf   Rh   (   RH   Ri   Rl   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRS   #  s     c         C   s   |  i  t |  S(   N(   t
   com_binaryt   Tuple(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   testlist3  s    c         C   sc   t  |  d j oC | d d t i j o+ |  i | d  } |  i | | d  Sn |  i |  S(   Ni   i   i    (   R+   R1   t   gen_forRn   t   com_generator_expressionRă   (   RH   Ri   t   test(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   testlist_gexp=  s    +c         C   s  t  |  d j o- | d d t i j o |  i | d  Sn |  i | d  } t  |  d j o t  |  d j p t  | d d d j p t  | d d d j p t  |  i | d  } |  i | d  } t | | | d	 | d d Sn | S(
   Ni   i    i   t   ifi   t   elsei   i   R(   (   R+   R1   R]   Rn   Ro   t   IfExp(   RH   Ri   t   thenRć   t   else_(    (    s*   /usr/lib/python2.5/compiler/transformer.pyRć   C  s    +"c         C   sP   t  |  d j o- | d d t i j o |  i | d  Sn |  i t |  S(   Ni   i    (   R+   R1   R]   Rá   t   Or(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   or_testQ  s    +c         C   s   |  i  t |  S(   N(   Rá   t   And(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   and_testX  s    c         C   sF   |  i  | d  } t |  d j o t | d | d d Sn | S(   Ni˙˙˙˙i   R(   i    (   Rn   R+   t   Not(   RH   Ri   t   result(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   not_test\  s    c   	      C   s  |  i  | d  } t |  d j o | Sn g  } xĘ t d t |  d  D]° } | | d } | d } | d t i j oB | d } t |  d j o! | d j o
 d } q˝ d } qĎ n t | d } | d d } | i | |  i  | |  f  qM Wt | | d | S(	   Ni    i   i   i   t   nots   not ins   is notR(   (   Rn   R+   R   R6   RE   t
   _cmp_typesR   t   Compare(	   RH   Ri   R`   t   resultsRk   t   nlRa   R   R(   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   comparisonc  s$     


$c         C   s   |  i  t |  S(   N(   Rá   t   Bitor(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRU     s    c         C   s   |  i  t |  S(   N(   Rá   t   Bitxor(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   xor_expr  s    c         C   s   |  i  t |  S(   N(   Rá   t   Bitand(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   and_expr  s    c         C   sć   |  i  | d  } xĚ t d t |  d  D]˛ } |  i  | |  } | | d d t i j o$ t | | g d | d d } q, | | d d t i j o$ t | | g d | d d } q, t d | | d d  q, W| S(   Ni    i   i   R(   s   unexpected token: %s(	   Rn   R   R+   R6   t	   LEFTSHIFTt	   LeftShiftRĄ   t
   RightShiftR   (   RH   Ri   R`   Rk   t   right(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   shift_expr  s     $$c         C   sć   |  i  | d  } xĚ t d t |  d  D]˛ } |  i  | |  } | | d d t i j o$ t | | g d | d d } q, | | d d t i j o$ t | | g d | d d } q, t d | | d d  q, W| S(   Ni    i   i   R(   s   unexpected token: %s(	   Rn   R   R+   R6   t   PLUSt   Addt   MINUSt   SubR   (   RH   Ri   R`   Rk   R  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt
   arith_expr  s     $$c         C   s  |  i  | d  } xű t d t |  d  D]á } |  i  | |  } | | d d } | t i j o t | | g  } n | t i j o t | | g  } nZ | t i j o t	 | | g  } n4 | t i
 j o t | | g  } n t d |  | d d | _ q, W| S(   Ni    i   i   s   unexpected token: %s(   Rn   R   R+   R6   RÁ   t   Mult   SLASHt   Divt   PERCENTt   Modt   DOUBLESLASHt   FloorDivR   R(   (   RH   Ri   R`   Rk   R  t   t(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   termŠ  s      c         C   sł   | d } | d } |  i  | d  | d d  } | t i j o t | d | d SnS | t i j o t | d | d Sn+ | t i j o t | d | d } n | S(   Ni    i˙˙˙˙i   R(   i   (   R   R6   R  t   UnaryAddR  t   UnarySubt   TILDEt   Invert(   RH   Ri   t   eltR  R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   factorť  s    

!c         C   s   |  i  | d  } x| t d t |   D]e } | | } | d t i j o/ t | |  i  | | d  g d | d Sn |  i | |  } q) W| S(   Ni    i   R(   i   (   Rn   R   R+   R6   t
   DOUBLESTARt   Powert   com_apply_trailer(   RH   Ri   R`   Rk   R  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   powerČ  s     
 c         C   s   |  i  | d d |  S(   Ni    (   RF   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   atomŐ  s    c         C   sE   | d d t  i j o t d d | d d Sn |  i | d  S(   Ni   i    R(   i   (    (   R6   R   Râ   Rn   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR8   Ř  s    c         C   sE   | d d t  i j o t d d | d d Sn |  i | d  S(   Ni   i    R(   i   (    (   R6   t   RSQBt   Listt   com_list_constructor(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR:   Ý  s    c         C   sE   | d d t  i j o t d d | d d Sn |  i | d  S(   Ni   i    R(   i   (    (   R6   t   RBRACEt   Dictt   com_dictmaker(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR<   â  s    c         C   s   t  |  i | d   S(   Ni   (   t	   BackquoteRn   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR>   ç  s    c         C   s,   t  | d d  } t | d | d d S(   Ni    i   R(   i   (   R   RŻ   (   RH   Ri   t   k(    (    s*   /usr/lib/python2.5/compiler/transformer.pyR@   ę  s    c         C   sb   |  i  oJ |  i  d j o t | d  i |  i   } n t d |  i  | f  Sn t |  Sd  S(   Ns   utf-8s
   iso-8859-1s   # coding: %s
%s(   s   utf-8s
   iso-8859-1(   RG   t   unicodet   encodeR   (   RH   t   lit(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   decode_literalď  s
    
c         C   sF   d } x% | D] } | |  i  | d  7} q Wt | d | d d S(   NRV   i   R(   i    i   (   R(  RŻ   (   RH   Ri   R$  R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRB   ú  s
     c         C   s    t  | d d d | d d S(   Ni    i   R(   i   (   t   Name(   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRD      s    c         C   s   |  i  | d S(   Ni    (   R0   (   RH   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR     s    c         C   s   |  i  | d | d  S(   Ni    i   (   R0   (   RH   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRn     s    c         G   s   t  t d    S(   N(   R~   RŻ   R   (   RH   R-   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR5     s    c         C   sä  g  } g  } d } d } xź| t  |  j  o¨| | } | d t i j p | d t i j o× | d t i j oO | | d } | d t i j o) | i | d  | t B} | d } qĂ n | t  |  j  o\ | | d } | t i j o | | d } n t d |  | i | d  | t B} n Pn | i |  i	 |   | d } | t  |  j  oD | | d t i
 j o, | i |  i | | d   | d } n t  |  o t d  n | d } q W| | | f S(   Ni    i   i   s   unexpected token: %si   s-   non-default argument follows default argument(   R+   R6   RÁ   R  RE   R   R   R   R   t	   com_fpdefR   Rn   t   SyntaxError(   RH   Ri   R   R   R   Rk   R`   R  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR}      s>     
(

+c         C   s9   | d d t  i j o |  i | d  Sn | d d S(   Ni   i    i   (   R6   R9   t
   com_fplist(   RH   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR*  R  s    c         C   su   t  |  d j o |  i | d  Sn g  } x: t d t  |  d  D]  } | i |  i | |   qG Wt |  S(   Ni   i   (   R+   R*  R   R   R    (   RH   R`   RM   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR,  X  s     c         C   s_   d } xN | D]F } t  |  t  d  j o' | d d j o | | d d } q q W| d  S(   NRV   i    i   Rž   i˙˙˙˙(    (   R   (   RH   R`   RJ   Ra   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRŔ   a  s     *c         C   sŞ   | d t  i j p t  | d } |  i | d d  } t |  d j o | d  f Sn | d d d j p t  | d d t i j p t  | | d d f S(   Ni    i   t   asi   (   R1   t   dotted_as_nameRo   RŔ   R+   R   R6   RE   (   RH   R`   t   dot(    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   com_dotted_as_namei  s    
c         C   s|   | d t  i j p t  | d } |  i | d  g } x: t d t |  d  D]  } | i |  i | |   qT W| S(   Ni    i   i   (   R1   t   dotted_as_namesRo   R0  R   R+   R   (   RH   R`   R   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRť   s  s    
 c         C   sĹ   | d t  i j p t  | d } | d d t i j p t  t |  d j o | d d d  f Sn | d d d j p
 t |  | d d t i j p t  | d d | d d f S(   Ni    i   R-  i   (   R1   t   import_as_nameRo   R6   RE   R+   R   (   RH   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyt   com_import_as_name{  s    
c         C   s|   | d t  i j p t  | d } |  i | d  g } x: t d t |  d  D]  } | i |  i | |   qT W| S(   Ni    i   i   (   R1   t   import_as_namesRo   R3  R   R+   R   (   RH   R`   R   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRĂ     s    
 c         C   sG   g  } x: t  d t |  d  D]  } | i |  i | |   q W| S(   Ni   i   (   R   R+   R   Rn   (   RH   R`   R   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR     s
     c   
   	   C   s  | d d t  i j o9 t |  i | d  |  i | d  d | d d Sn g  } d  } d  } x@t d t |  d  D]&} | | } | d t i j o t |  d j oJ |  i | d  } t |  d j o |  i	 | d t
  } qd  } n d  } } | i | | |  i | | d  f  n | d t  i j o\ | d d j o |  i | | d  } q˘| d d	 j o |  i | | d  } q˘q| q| Wt |  i | d  | | d | d d }	 | o t |	 | d | d d Sn |	 Sd  S(
   Ni   i    i   i   R(   i   i   Ré   t   finally(   R6   RE   t
   TryFinallyRn   R   R   R+   R1   t   except_clauseR   R   R   t	   TryExcept(
   RH   Ri   t   clausesRŇ   t   finallyNodeRk   R`   Rˇ   Rś   t
   try_except(    (    s*   /usr/lib/python2.5/compiler/transformer.pyRŰ     s8     


+#c         C   s   |  i  | d  } |  i  | d  } | d d t i j o
 d  } n |  i | d d t  } t | | | d | d d S(   Ni   i˙˙˙˙i   i    R(   (   Rn   R6   R   R   R   R   t   With(   RH   Ri   RU   t   bodyt   var(    (    s*   /usr/lib/python2.5/compiler/transformer.pyRÝ   ź  s    
c         C   s   |  i  | d  S(   Ni   (   Rn   (   RH   Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRß   Ć  s    c         C   s#   | d t  i j p t  | d S(   Ni    i   (   R1   t	   augassignRo   (   RH   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR   Ę  s    c         C   sJ   |  i  |  } | i t t t t f j o | Sn t d | i i  d S(   s   Return node suitable for lvalue of augmented assignment

        Names, slices, and attributes are the only allowable nodes.
        s   can't assign to %sN(   Rn   t	   __class__R)  t   Slicet	   SubscriptRq   R+  R   (   RH   R`   R"   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR   Î  s    c         C   s|  xu| d } | t  i t  i t  i t  i f j o5 t |  d j o |  i | |  Sn | d } q | t j o. t |  d j o t d  n | d } q | t  i	 j oŐ | d d t  i
 j o t d  n t |  d j o |  i | d  } x^ t d t |  d  D]C } | | } | d t i j o t d  n |  i | |  } qW|  i | | d |  Sn | d } q | t  i
 j oŃ | d d } | t i j o/ | d } | d t i j o t d  qdqu| t i j o? | d } | d t i j o t d  n |  i | |  Squ| t i j o |  i | d |  Squt d  q t d	 |  q d  S(
   Ni    i   i   s   can't assign to operatori˙˙˙˙s   can't assign to ()s   can't assign to []s   can't assign to literals   bad assignment (%s)(   R1   t   exprlistRă   t   testlist_safeRç   R+   t   com_assign_tuplet   _assign_typesR+  R  R  Rn   R   R6   R  R  t   com_assign_trailerR9   R   R;   R  t   com_assign_listRE   t   com_assign_name(   RH   R`   t	   assigningR  t   primaryRk   t   ch(    (    s*   /usr/lib/python2.5/compiler/transformer.pyR   Ř  sN    
% 


c         C   s\   g  } x= t  d t |  d  D]# } | i |  i | | |   q Wt | d t |  S(   Ni   i   R(   (   R   R+   R   R   t   AssTupleR%   (   RH   R`   RJ  t   assignsRk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRE    s
     !c         C   sÎ   g  } xŻ t  d t |  d  D] } | d t |  j  o[ | | d d t i j o t d  n | | d d t i j p t | | d  n | i |  i	 | | |   q Wt
 | d t |  S(   Ni   i   i    s"   can't assign to list comprehensionR(   (   R   R+   R1   t   list_forR+  R6   R˘   Ro   R   R   t   AssListR%   (   RH   R`   RJ  RN  Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRH  
  s     2!c         C   s   t  | d | d | d S(   Ni   R(   i   (   t   AssName(   RH   R`   RJ  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRI    s    c         C   s   | d d } | t  i j o |  i | | d |  Sn | t  i j o |  i | | d |  Sn | t  i j o t d  n t d |  d  S(   Ni   i    i   s   can't assign to function calls   unknown trailer type: %s(   R6   Rp   t   com_assign_attrR;   t   com_subscriptlistR9   R+  (   RH   RK  R`   RJ  R  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRG    s    c         C   s   t  | | d | d | d S(   Ni   R(   i˙˙˙˙(   t   AssAttr(   RH   RK  R`   RJ  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRR  !  s    c         C   sĄ   t  |  } | d j o% | d } |  i |  | d  Sn g  } xD t d | d  D]0 } | | } | i |  i |  | d   qW W| | d t |  S(   s=   Compile 'NODE (OP NODE)*' into (type, [ node1, ..., nodeN ]).i   i    i   R(   (   R+   R   R   R   R%   (   RH   t   constructorRi   R"   Ra   R3   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRá   $  s    
 
$c         C   sR   |  i  |  | d  } | d  j	 p t  t | t  o | Sn t | g  S(   Ni   (   R   R   Ro   R$   Rh   (   RH   R`   Rň   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRb   0  s
    c         C   sb   |  i  |  | d  } | d  j	 p t  t | t  o | i | i  n | i |  d  S(   Ni   (   R   R   Ro   R$   Rh   t   extendR!   R   (   RH   Rl   R`   Rň   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRf   7  s
    RO  c         C   sČ   g  } x¨ t  d t |   D] } | | d t i j o: t | |  d j p t  |  i | d | |  Sn  | | d t i j o q n | i |  i	 | |   q Wt
 | d | d i S(   Ni   i    R(   (   R   R+   R1   RO  Ro   t   com_list_comprehensionR6   R˘   R   Rn   R  R(   (   RH   Ri   t   valuesRk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR  @  s     c         C   so  | d d } g  } xE| o=| d d } | d j o |  i  | d t  } |  i | d  } t | | g   } | d d | _ | i |  t |  d j o
 d  } qW|  i | d  } q | d j oq |  i | d  }	 t	 |	 d | d d }
 | i
 i |
  t |  d j o
 d  } qW|  i | d  } q t d	 | | f  q Wt | | d | S(
   Ni   i   t   fori   i   Rč   R(   i   s,   unexpected list comprehension element: %s %d(   R   R   Rn   t   ListCompForR(   R   R+   R   t   com_list_itert
   ListCompIft   ifsR+  t   ListComp(   RH   RU   R`   R(   t   forsR  RŘ   RŮ   t   newforRć   t   newif(    (    s*   /usr/lib/python2.5/compiler/transformer.pyRW  M  s2     

c         C   s#   | d t  i j p t  | d S(   Ni    i   (   R1   t	   list_iterRo   (   RH   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR[  p  s    c         C   sZ   g  } x: t  d t |  d  D]  } | i |  i | |   q Wt | d | d i S(   Ni   i   R(   i    (   R   R+   R   Rn   R  R(   (   RH   Ri   RX  Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR  t  s
     Rä   c         C   s  | d d } g  } xB| o:| d d } | d j o |  i  | d t  } |  i | d  } t | | g  d | d d } | i |  t |  d j o
 d  } qT|  i | d  } q | d j oq |  i | d  }	 t |	 d | d d }
 | i	 i |
  t |  d j o
 d  } qT|  i | d  } q t
 d	 | | f  q Wt | d
 _ t t | |  d | S(   Ni   i   RY  i   R(   i   Rč   i   s.   unexpected generator expression element: %s %di    (   R   R   Rn   t
   GenExprForR   R+   R   t   com_gen_itert	   GenExprIfR]  R+  t   Truet
   is_outmostt   GenExprt   GenExprInner(   RH   RU   R`   R(   R_  R  RŘ   t   genNodeR`  Rć   Ra  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRĺ   {  s4     

c         C   s#   | d t  i j p t  | d S(   Ni    i   (   R1   t   gen_iterRo   (   RH   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRd    s    c         C   su   g  } xQ t  d t |  d  D]7 } | i |  i | |  |  i | | d  f  q Wt | d | d d i S(   Ni   i   i   R(   i    (   R   R+   R   Rn   R!  R(   (   RH   Ri   R3   Rk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR"  Ą  s     c         C   s   | d d } | t  i j o |  i | | d  Sn | t  i j o |  i | | d  Sn | t  i j o |  i | | d t  Sn t d |  d  S(   Ni   i    i   s   unknown node type: %s(	   R6   R9   Rv   Rp   t   com_select_memberR;   RS  R   R+  (   RH   t   primaryNodeRi   R  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR  Š  s    c         C   s<   | d t  i j o t d  n t | | d d | d S(   Ni    s   member must be a namei   R(   i   (   R6   RE   R+  Rq   (   RH   Rm  Ri   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRl  ´  s    c      
   C   sC  | d t  i j o t | g  d t |  Sn g  } d } t |  } xŐ t d | d  D]ˇ } | | } | d t  i j p | d t  i j o Pn |  i | |  \ } } | d j oH t	 | t
  o8 t |  d j o% | d d t i j o t d  n | i |  q\ W| d } | | j  o& | | d t  i j o | d } n d  }	 }
 xĂ | | j  oľ | | } | | d } | d } | d t  i j o- |	 d  j	 o t d  n |  i |  }	 qa| d t  i j o- |
 d  j	 o t d  n |  i |  }
 qat d	 |  qaWt | | |	 |
 d t |  S(
   Ni    R(   i   i   i   s&   generator expression needs parenthesiss$   already have the varargs indentifiers#   already have the kwargs indentifiers   unknown node type: %s(   R6   R   t   CallFuncR%   R+   R   RÁ   R  t   com_argumentR$   Rh  R1   Rä   R+  R   R˘   R   Rn   (   RH   Rm  Ri   R-   t   kwt   len_nodelistRk   R`   Rň   t	   star_nodet
   dstar_nodet   tokRL  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRv   š  sF     
(+
%
 

c         C   sD  t  |  d j oI | d d t i j o1 |  i | d  } d |  i | | d  f Sn t  |  d j o/ | o t d  n d |  i | d  f Sn |  i | d  } | d } x6 t  |  d j o" | d t i j o | d } qž W| d t i j o t d | d  n t | d | d | d } d | f S(   Ni   i   i    i   s!   non-keyword arg after keyword args#   keyword can't be an expression (%s)R(   (	   R+   R1   Rä   Rn   Rĺ   R+  R6   RE   t   Keyword(   RH   Ri   Rp  Rć   Rň   Ra   R`   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRo  ä  s     +
 'c      	   C   sň   t  |  d j o | d } | d d t i j p+ t  |  d j o- | d d t i j o/ | d d t i j o |  i | | |  Sq n g  } x: t d t  |  d  D]  } | i |  i | |   q˛ Wt	 | | | d t
 |  S(   Ni   i   i    i˙˙˙˙R(   (   R+   R6   R   R1   R   t	   com_sliceR   R   t   com_subscriptRB  R%   (   RH   RK  Ri   RJ  t   subt
   subscriptsRk   (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRS  ő  s    
+ c         C   s   | d } | d } | t  i j o# | d d t  i j o t   Sn | t  i j p t |  d j o |  i |  Sn |  i |  S(   Ni   i    i   (   R6   Rp   t   EllipsisR   R+   t   com_sliceobjRn   (   RH   R`   RL  R  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRw  	  s    

(#c         C   sE  g  } | d d t  i j o | i t d    d } n! | i |  i | d   d } | t |  j  o@ | | d t i j o( | i |  i | |   | d } n | i t d    xk t	 | t |   D]T } | | } t |  d j o | i t d    q× | i |  i | d   q× Wt
 | d t |  S(   Ni   i    i   i   R(   (   R6   R   R   RŻ   R   Rn   R+   R1   Rć   R   t   SliceobjR%   (   RH   R`   R3   Rk   t   jRL  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR{    s"    

+ 
c         C   sż   d  } } t |  d j oF | d d t i j o |  i | d  } q  |  i | d  } n> t |  d j o* |  i | d  } |  i | d  } n t | | | | d t |  S(   Ni   i   i    i   i   R(   (   R   R+   R6   R   Rn   RA  R%   (   RH   RK  R`   RJ  t   lowert   upper(    (    s*   /usr/lib/python2.5/compiler/transformer.pyRv  7  s    
c      
   C   sĘ  | d  j o | d } | d } n | t i j of t |  d j o |  i | d  Sn x3 | D]+ } | d t i j o |  i |  Sqd qd Wd  Sn | t i j o> x3 | D]+ } | d t i j o |  i |  Sq˛ q˛ Wd  Sn | t i j oS | d d t i	 j o3 d } x" | D] } | t
 | d  } qW| Sn d  Sn | t i j p  | t i j p | t i j o |  i | d  Sn | t j o( t |  d j o |  i | d  Sn d  S(   Ni    i   RV   (   R   R1   RS   R+   Rd   R   R[   R  R6   RC   R   R   t
   small_stmtt
   _doc_nodes(   RH   R`   Ra   Rx  t   sR  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyRd   E  s>    
     N(   R   R   t   __doc__RK   RR   R   R   RX   RP   RZ   R[   R\   Rs   Rx   R{   R^   R]   t   old_lambdefR_   R   R  t	   flow_stmtt   compound_stmtR   R   R|   R   R   Ru   R   R   R   R   R    R§   R¨   RŠ   RŤ   R­   R°   Rą   Rł   R¸   Rš   Rź   RÇ   RÉ   RË   RÍ   RÓ   RÖ   RÚ   RÜ   RŢ   Rŕ   RS   Ră   RD  t	   testlist1RC  Rç   Rć   Rî   t   old_testRđ   Ró   Rů   RU   Rü   Rţ   R  R  R  R  R  R  R8   R:   R<   R>   R@   R(  RB   RD   R   Rn   R5   R}   R*  R,  RŔ   R0  Rť   R3  RĂ   R   RŰ   RÝ   Rß   R   R   R   RE  RH  RI  RG  RR  Rá   Rb   Rf   R   R1   R  RW  R[  Rĺ   Rd  R"  R  Rl  Rv   Ro  RS  Rw  R{  Rv  R   Rd   (    (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR   _   sü   							
						!																																												!																					2					
		
			)	
			
	,		
		
						#		"				+			
	$	t   <t   >s   ==s   <=s   >=s   !=Rą   Rł   c         C   s|   g  } xo |  D]g } t  | t  o | i t i | |   q t  | t  o | i |  q | i t |   q W| S(   N(   R$   t   intR   t   _namest   getR,   t
   debug_tree(   RQ   R"   R  (    (    s*   /usr/lib/python2.5/compiler/transformer.pyR  É  s     (T   R  t   compiler.astRN   R1   R6   t   syst   StandardErrorR   t   compiler.constsR   R   R   R   R   R   R   R   R%   R/   R   R    Ră   RD  Rć   Rî   Rđ   Ró   Rů   RU   Rü   Rţ   R  R  R  R  R  R  t   LESSt   GREATERt   EQEQUALR   t	   LESSEQUALt   GREATEREQUALt   NOTEQUALRő   R^   R_   R   R  R  R   R  R§   R¨   RŠ   RŤ   R­   R°   R¸   Rš   RÉ   RË   RÍ   RÓ   RÖ   RÚ   RÜ   RŢ   RS   RC  R  t   _legal_node_typesR   R   Rą   Rł   RF  R  R2   R3   R$  t   vt   tok_nameR  (    (    (    s*   /usr/lib/python2.5/compiler/transformer.pys   <module>	   sŘ   
	
			
	˙ ˙ ˙ ˙ ˙   