B
    @)H[J	  ã               @   sŽ   d dl mZmZmZ d dlmZ d dlmZmZmZm	Z	m
Z
 d dlmZmZmZmZmZmZ ddlmZ ddlmZmZ G d	d
„ d
ejƒZdS )é    )Úabsolute_importÚdivisionÚunicode_literals)ÚQName)ÚSTARTÚENDÚXML_NAMESPACEÚDOCTYPEÚTEXT)ÚSTART_NSÚEND_NSÚSTART_CDATAÚ	END_CDATAÚPIÚCOMMENTé   )Úbaseé   )ÚvoidElementsÚ
namespacesc               @   s   e Zd Zdd„ Zdd„ ZdS )Ú
TreeWalkerc             c   sd   d }x6| j D ],}|d k	r4x|  ||¡D ]
}|V  q&W |}qW |d k	r`x|  |d ¡D ]
}|V  qRW d S )N)ÚtreeÚtokens)ÚselfÚpreviousÚeventÚtoken© r   úhC:\Users\HIRONO~1\AppData\Local\Temp\pip-install-qz7kpjmn\pip\pip\_vendor\html5lib\treewalkers\genshi.pyÚ__iter__   s    
zTreeWalker.__iter__c             c   s€  |\}}}|t krÆ|\}}|j}|j}	i }
x8|D ]0\}}t|tƒrT||
|j|jf< q0||
d |f< q0W |	td kr´|tkr´xJ|  |	||
| p |d tkp |d |k¡D ]
}|V  q¤W n|  	|	||
¡V  n¶|tkrþ|j}|j}	|	td ksî|tkrü|  
|	|¡V  n~|tk�r|  |¡V  nf|tk�r>xZ|  |¡D ]}|V  �q,W n>|tk�rV| j|Ž V  n&|tttttttfk�rpn|  |¡V  d S )NÚhtmlr   r   )r   Ú	localnameÚ	namespaceÚ
isinstancer   r   r   ZemptyTagr   ZstartTagÚendTagr   Úcommentr
   Útextr	   Údoctyper   r   r   r   r   r   Úunknown)r   r   ÚnextÚkindÚdataÚ_ÚtagZattribsÚnamer"   Zconverted_attribsÚkÚvr   r   r   r   r      s@    





zTreeWalker.tokensN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r      s   r   N)Ú
__future__r   r   r   Zgenshi.corer   r   r   r   r	   r
   r   r   r   r   r   r   Ú r   Ú	constantsr   r   r   r   r   r   r   Ú<module>   s    