o
    h                     @   sL   d dl mZ d dlmZmZ d dlmZ G dd deZG dd deZdS )	    )Counter)	BaseVocabBaseMultiVocab)VOCAB_PREFIXc                   @   s   e Zd Zdd ZdS )Vocabc                    sL   t | j tttt   fdddd | _dd t| jD | _d S )Nc                    s    |  S N )kcounterr   T/var/www/html/env_mimamsha/lib/python3.10/site-packages/stanza/models/lemma/vocab.py<lambda>	   s    z#Vocab.build_vocab.<locals>.<lambda>T)keyreversec                 S   s   i | ]\}}||qS r   r   ).0iwr   r   r   
<dictcomp>
   s    z%Vocab.build_vocab.<locals>.<dictcomp>)	r   datar   listsortedkeys_id2unit	enumerate_unit2id)selfr   r
   r   build_vocab   s   
(zVocab.build_vocabN)__name__
__module____qualname__r   r   r   r   r   r      s    r   c                   @   s   e Zd Zedd ZdS )
MultiVocabc                 C   s*   |  }|  D ]\}}t|||< q|S r   )itemsr   load_state_dict)cls
state_dictnewr	   vr   r   r   r"      s   zMultiVocab.load_state_dictN)r   r   r   classmethodr"   r   r   r   r   r       s    r    N)	collectionsr   stanza.models.common.vocabr   r   %stanza.models.common.seq2seq_constantr   r   r    r   r   r   r   <module>   s
    