def add_fallback_catalogue(self, catalogue):
assert isinstance(catalogue, MessageCatalogue)<EOL>c = self<EOL>while True:<EOL><INDENT>if c.locale == catalogue.locale:<EOL><INDENT>raise ValueError(<EOL>'<STR_LIT>'<EOL>'<STR_LIT>' %<EOL>catalogue.locale)<EOL><DEDENT>c = c.parent<EOL>if c is None:<EOL><INDENT>break<EOL><DEDENT><DEDENT>catalogue.parent = self<EOL>self.fallback_catalogue = catalogue<EOL>for resource in catalogue.resources:<EOL><INDENT>self.add_resource(resource)<EOL><DEDENT>
Merges translations from the given Catalogue into the current one
only when the translation does not exist.

This is used to provide default translations when they do not exist
for the current locale.

@type id: The
@param id: message id