
    h                     J    S SK Jr  S SKJr  SSKJr  SSKJr   " S S\5      rg)	    )OrderedDict)List   )
Lemmatizer)Tokenc                   ,    \ rS rSrS\S\\   4S jrSrg)MacedonianLemmatizer   tokenreturnc                 N   UR                   nUR                  R                  5       nUS;   a  UR                  5       /$ USS  S:X  a  US S nSnU R                  R	                  S0 5      nU R                  R	                  S0 5      nU R                  R	                  S0 5      n[        UR                  U5      UR                  U5      UR                  U5      45      (       d  US:X  a  U/$ UR                  5       /$ UR                  U0 5      nUR                  U0 5      nUR                  U/ 5      n	Un
UR                  5       n/ nU	 Hp  u  pUR                  U5      (       d  M  US [        U5      [        U5      -
   U-   nU(       d  MC  X;   d  UR                  5       (       a  M_  UR                  U5        Mr     [        [        R                  " U5      5      nUR                  U/ 5       H  nX;  d  M
  UR                  S	U5        M     U(       d  UR                  U
5        U$ )
N) eolspaceu   јќиverblemma_index	lemma_exclemma_rulespropnr   )textpos_lowerlookups	get_tableanygetendswithlenisalphaappendlistr   fromkeysinsert)selfr   stringuniv_posindex_table	exc_tablerules_tableindex
exceptionsrulesorigformsoldnewforms                  R/home/james-whalen/.local/lib/python3.13/site-packages/spacy/lang/mk/lemmatizer.pyrule_lemmatize#MacedonianLemmatizer.rule_lemmatize	   s   ::##%++LLN##"#;("CR[FHll,,]B?LL**;;	ll,,]B?)h')
 
 7"x''"-]]8R0
"-HCs##6Fc#h 67#==LL&  [))%01NN62.D Q% / LL     N)	__name__
__module____qualname____firstlineno__r   r   strr4   __static_attributes__r7   r6   r3   r	   r	      s    1E 1d3i 1r6   r	   N)	collectionsr   typingr   pipeliner   tokensr   r	   r7   r6   r3   <module>rB      s    #  " 2: 2r6   