
    hf                         S SK JrJrJrJr  SSKJrJrJrJ	r	  SSK
JrJr  / SQrS\\\4   S\\\\\4      4S jrS	\0rg
)    )IteratorSetTupleUnion   )NOUNPRONPROPNVERB)DocSpan)nsubjnmodddoclike	nsubjpasspcomppdoclikedoclikeobldativeapposattrROOTr   returnc              #   $  #    U R                   n[         Vs/ s H'  o!R                  R                  R	                  U5      PM)     nnUR                  R                  R	                  S5        UR                  R                  R	                  S5      n[        5       n[        U 5       GHZ  u  pgUR                  [        [        [        4;  a  M'  UR                  U;   a  M9  UR                  U;   d  MK  UR                   Vs/ s H   oR                  U;  d  M  UR                  PM"     n	nU	(       d  M  UR                  S UR                   5       5        UR                  [        UR                  S-   5      5        UR                   R                  ["        :X  aQ  UR	                  UR                   R                  5        UR                  S UR                   R$                   5       5        U	S   UR                  S-   U4v   GM]     gs  snf s  snf 7f)zHDetect base noun phrases from a dependency parse. Works on Doc and Span.conjNPc              3   8   #    U  H  oR                   v   M     g 7fNi).0js     X/home/james-whalen/.local/lib/python3.13/site-packages/spacy/lang/ja/syntax_iterators.py	<genexpr>noun_chunks.<locals>.<genexpr>   s     2\\      c              3   8   #    U  H  oR                   v   M     g 7fr   r    )r"   ws     r$   r%   r&   %   s     :)9ACC)9r'   r   N)doclabelsvocabstringsaddset	enumerateposr   r
   r	   r!   depsubtreeupdaterangeheadr   rights)
r   r+   labelnp_depsnp_labelseenr!   wordr*   unseens
             r$   noun_chunksr?      sq    
++C9?@yy  $$U+G@II&!yy  $$T*HUDW%88D%..66T>88w#'<<C<a33d?cacc<FCKK2T\\22KKdffqj)* yy}}$%:)9)9::)TVVaZ11' &	 A Ds*   H.HB(H1H?HH&C*Hr?   N)typingr   r   r   r   symbolsr   r	   r
   r   tokensr   r   r,   intr?   SYNTAX_ITERATORS     r$   <module>rG      sU    . . . .  
~2sDy) 2huS#s]7K.L 2: ";/ rF   