let input_mo_translation failsafe chn mo_header number =
let untranslated =
input_mo_untranslated failsafe chn mo_header number
in
let translated =
input_mo_translated failsafe chn mo_header number
in
match untranslated with
[ id ] -> Singular ( id, String.concat "\000" translated )
| id :: id_plural :: [] -> Plural ( id, id_plural, translated )
| id :: id_plural :: tl ->
fail_or_continue failsafe
(MoJunk (id, tl))
(Plural (id, id_plural, translated))
| [] ->
fail_or_continue failsafe
MoEmptyEntry
(Singular ( "", ""))