
    iX	                         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 deeef   deeeeef      fdZd	eiZy
)    )IteratorTupleUnion   )Errors)AUXNOUNPRONPROPNVERB)DocSpandoclikereturnc              #   R  K   d fdfdfd}| j                   }|j                  d      st        t        j                        t        |      sy g d}g d}dg}|j                  j                  j                  d	      }|D cg c]'  }|j                  j                  j                  |      ) c}|D cg c]'  }|j                  j                  j                  |      ) c}|D cg c]'  }|j                  j                  j                  |      ) c}d
}| D ]f  }	|	j                  t        t        t        fv s! |||	      \  }
}|
j                  |k  r=|
j                  |j                  dz   |f |j                  }h y c c}w c c}w c c}w w)Nc                 2    | j                   t        t        fv S N)posr   r   )toks    o/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/spacy/lang/la/syntax_iterators.pyis_verb_tokenz"noun_chunks.<locals>.is_verb_token   s    ww4+%%    c                 t    | }t        t        | j                              D ]  }|j                  v s|} |S r   )reversedlistleftsdep)root
left_boundr   np_left_depss      r   get_left_boundz#noun_chunks.<locals>.get_left_bound   s>    
D,- 	!Cww,& 
	! r   c           	          |}|j                   D ]O  }|j                  v s | |      }t        t        fd| |j                  |j                               r |S |}Q |S )Nc                 4     |       xs | j                   v S r   )r   )tr   	stop_depss    r   <lambda>z6noun_chunks.<locals>.get_right_bound.<locals>.<lambda>   s    -"2"Haeey6H r   )rightsr   r   filteri)	docr   right_boundr   rightget_right_boundr   np_right_depsr%   s	        r   r-   z$noun_chunks.<locals>.get_right_bound   st    ;; 	(Cww-''S1HDFFUWW-   #(K	( r   c                 &     |       | |      fS r    )r*   r   r!   r-   s     r   
get_boundsznoun_chunks.<locals>.get_bounds%   s    d#_S$%???r   DEP)detfixed	nmod:possamodflatgoeswithnummodappos)	r4   r5   r6   r7   r8   r9   r:   nmodr3   punctNP   )r*   has_annotation
ValueErrorr   E029lenvocabstringsaddr   r   r	   r
   r)   )r   r1   r*   left_labelsright_labelsstop_labelsnp_labellabel
prev_righttokenleftr,   r!   r-   r   r    r.   r%   s               @@@@@@r   noun_chunksrO   
   sb    & @ ++Ce$%%s8	K
L )Kyy  $$T*H>IJUCII%%))%0JL?KLeSYY&&**51LM;FG%""&&u-GIJ !99d++$S%0KD%vv#&&%''A+x//J! KLGs1   BF',FF',F4F';,F"''F'AF'rO   N)typingr   r   r   errorsr   symbolsr   r	   r
   r   r   tokensr   r   intrO   SYNTAX_ITERATORSr0   r   r   <module>rV      sT    ) )  3 3 
I!sDy) I!huS#s]7K.L I!X ";/ r   