// Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this sourcecode is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart=2.9

/// Hard-coded list of all available locales for dates.
final availableLocalesForDateFormatting = const [
  "en_ISO",
  "af",
  "am",
  "ar",
  "ar_DZ",
  "ar_EG",
  "az",
  "be",
  "bg",
  "bn",
  "br",
  "bs",
  "ca",
  "chr",
  "cs",
  "cy",
  "da",
  "de",
  "de_AT",
  "de_CH",
  "el",
  "en",
  "en_AU",
  "en_CA",
  "en_GB",
  "en_IE",
  "en_IN",
  "en_MY",
  "en_SG",
  "en_US",
  "en_ZA",
  "es",
  "es_419",
  "es_ES",
  "es_MX",
  "es_US",
  "et",
  "eu",
  "fa",
  "fi",
  "fil",
  "fr",
  "fr_CA",
  "fr_CH",
  "ga",
  "gl",
  "gsw",
  "gu",
  "haw",
  "he",
  "hi",
  "hr",
  "hu",
  "hy",
  "id",
  "in",
  "is",
  "it",
  "it_CH",
  "iw",
  "ja",
  "ka",
  "kk",
  "km",
  "kn",
  "ko",
  "ky",
  "ln",
  "lo",
  "lt",
  "lv",
  "mk",
  "ml",
  "mn",
  "mr",
  "ms",
  "mt",
  "my",
  "nb",
  "ne",
  "nl",
  "no",
  "no_NO",
  "or",
  "pa",
  "pl",
  "ps",
  "pt",
  "pt_BR",
  "pt_PT",
  "ro",
  "ru",
  "si",
  "sk",
  "sl",
  "sq",
  "sr",
  "sr_Latn",
  "sv",
  "sw",
  "ta",
  "te",
  "th",
  "tl",
  "tr",
  "uk",
  "ur",
  "uz",
  "vi",
  "zh",
  "zh_CN",
  "zh_HK",
  "zh_TW",
  "zu"
];
