let input_mo_translated failsafe chn mo_header number =
if number < (Int32.to_int mo_header.number_of_strings) then
(
let offset_pair =
(Int32.to_int mo_header.offset_table_translation) + number * 8
in
let str =
try
seek_in chn offset_pair;
input_int32_pair_string chn mo_header.endianess
with End_of_file ->
raise (MoInvalidTranslationOutOfBound
(in_channel_length chn,offset_pair))
in
split_plural str
)
else
(
raise
(MoInvalidStringOutOfBound
(Int32.to_int mo_header.number_of_strings,
number))
)