
    f                     D    d dl Z d dlZdZdZd Zdad Zd Zd Z	d Zd	 Z
y)
    Ngettextngettextc                     | j                  d      | j                  d      z
  }|j                  d      |j                  d      z
  }||k(  S )zz 
    helper that verifies that the message and the translated 
    message have the same number (and type) of % args
    %z\%)count)message
translatedarguments_in_messagearguments_in_translations       @/usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeGettext.py_verifyr      sN    
 #==.u1EE)//5
8H8H8OO#;;;    c                      t         ?t        j                         } t        j                  | t        j                  |       d      a t         S )z1Return a suitable gettext.*Translations instance.T)fallback)_translation_singleton	mygettext
textdomaintranslationbindtextdomain)domains    r   _translationr   )   sB     %%%'!*!6!6I,,V4t"E!!r   c                 .     t        | t              |      S N)getattr_gettext_method)r   r   s     r   unicode_gettextr   3   s    07;099r   c                 2     t        | t              |||      S r   )r   _ngettext_method)r   singularpluralns       r   unicode_ngettextr"   7   s    17; 01(FAFFr   c                     | dk(  ryt        t               |       }t        | |      st        j                  d| d|d       | S |S )ze
    version of gettext that logs errors but does not crash on incorrect
    number of arguments
     z#incorrect translation for message '' to '' (wrong number of arguments))r   r   r   loggingerror)r   translated_msgs     r   r   r   ;   sK    
 "}$\^W=N7N+-4nF	G r   c           	          t        t               | ||      }t        | |      s(t        j                  d| d|d|d       |dk(  r| S |S |S )zf
    version of ngettext that logs errors but does not crash on incorrect
    number of arguments
    z,incorrect translation for ngettext message 'z' plural: 'r%   r&      )r"   r   r   r'   r(   )msgid1msgid2r!   r)   s       r   r   r   K   sS    
 &lnffaHN6>* 0	1
 6Mr   )r'   r   r   r   r   r   r   r   r   r"   r    r   r   <module>r/      s?   ,   <  ":G r   