module I18n::Backend::Gettext

def normalize(locale, data)

def normalize(locale, data)
  data.inject({}) do |result, (key, value)|
    unless key.nil? || key.empty?
      key = key.gsub(I18n::Gettext::CONTEXT_SEPARATOR, '|')
      key, value = normalize_pluralization(locale, key, value) if key.index("\000")
      parts = key.split('|').reverse
      normalized = parts.inject({}) do |_normalized, part|
        { part => _normalized.empty? ? value : _normalized }
      end
      Utils.deep_merge!(result, normalized)
    end
    result
  end
end