o
    i:                     @   sx   d dl mZmZmZ ddlmZ ddlmZmZm	Z	 ddl
mZmZ deeef deeeeef  fdd	Zd	eiZd
S )    )IteratorTupleUnion   )Errors)NOUNPRONPROPN)DocSpandoclikereturnc           
      #   s    g d}| j   dsttj jjd}t fdd|D } jjd}d}d}t	| D ]H\}}||k r<q3|j
j|krCq3|jtttfv r{|j|v r{|jd	 } |j jD ]}	|	jttfv rn|	j|krn|	jd	 }q[|d	 }|j
j||fV  q3d
S )zHDetect base noun phrases from a dependency parse. Works on Doc and Span.)sboadankmoagROOTrootcjpdogappDEPNPc                 3   s    | ]
} j j|V  qd S )N)vocabstringsadd).0labeldoc R/home/ubuntu/.local/lib/python3.10/site-packages/spacy/lang/de/syntax_iterators.py	<genexpr>   s    znoun_chunks.<locals>.<genexpr>r   r      N)r"   has_annotation
ValueErrorr   E029r   r   r   set	enumerate	left_edgeiposr   r	   r   deprights)
r   labelsnp_labelnp_deps	close_apprbracketprev_endr.   wordrdepr#   r!   r$   noun_chunks   s2   



r:   N)typingr   r   r   errorsr   symbolsr   r   r	   tokensr
   r   intr:   SYNTAX_ITERATORSr#   r#   r#   r$   <module>   s    (#