static LocalizationBase()
        {
            DefaultCulture = new CultureInfoFixed(0x409)
            {
                CustomName = "English"
            };

            CultureInfoFixed[] array =
            {
                DefaultCulture,
                new CultureInfoFixed(0x419)
                {
                    CustomName = "Русский"
                },
                new CultureInfoFixed(0x407)
                {
                    CustomName = "Deutsch"
                },
                new CultureInfoFixed(0x40c)
                {
                    CustomName = "Française"
                }
            };

            CultureLCIDDictionary =
                new IndexDictionary <Int32, CultureInfoFixed>(array.Select(culture =>
                                                                           new KeyValuePair <Int32, CultureInfoFixed>(culture.LCID, culture)));

            CodeByLCIDMap =
                new Map <Int32, String>(CultureLCIDDictionary.ToDictionary(pair => pair.Value.LCID, pair => pair.Value.Code.ToLower()));

            DefaultComparer = new CultureComparer(CultureLCIDDictionary.Select(pair => pair.Value));

            SystemCulture = CultureLCIDDictionary.TryGetValue(CultureInfo.CurrentUICulture.LCID, DefaultCulture);

            CurrentCulture = SystemCulture;
        }
 public static void AddLanguage(Int32 lcid, CultureInfoFixed culture)
 {
     CultureLCIDDictionary.Add(lcid, culture);
     CodeByLCIDMap.Add(culture.Code, lcid);
 }