asiaCountries function

List<Country> asiaCountries()

Implementation

List<Country> asiaCountries() {
  final Continent continent = Continent(
    code: 'AS',
    name: 'Asia',
  );

  return [
    Country(
      isoCode: 'CN',
      name: 'China',
      continent: continent,
      languages: [Language(code: 'zh', name: 'Chinese', nativeName: '中文')],
      currencies: [Currency(code: 'CNY', name: 'Yuan Renminbi', symbol: '¥')],
      dialCode: '+86',
      phonePattern: r'^\+86(\d{3})(\d{4})(\d{4})$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Shanghai'],
      flagAssetPath: 'packages/world_picker/assets/flags/CN.svg',
    ),
    Country(
      isoCode: 'JP',
      name: 'Japan',
      continent: continent,
      languages: [Language(code: 'ja', name: 'Japanese', nativeName: '日本語')],
      currencies: [Currency(code: 'JPY', name: 'Yen', symbol: '¥')],
      dialCode: '+81',
      phonePattern: r'^\+81(\d{2})(\d{4})(\d{4})$',
      zipCodePattern: r'^\d{3}-\d{4}$',
      timezones: ['Asia/Tokyo'],
      flagAssetPath: 'packages/world_picker/assets/flags/JP.svg',
    ),
    Country(
      isoCode: 'IN',
      name: 'India',
      continent: continent,
      languages: [
        Language(code: 'hi', name: 'Hindi', nativeName: 'हिन्दी'),
        Language(code: 'en', name: 'English', nativeName: 'English')
      ],
      currencies: [Currency(code: 'INR', name: 'Indian Rupee', symbol: '₹')],
      dialCode: '+91',
      phonePattern: r'^\+91(\d{3})(\d{3})(\d{4})$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Kolkata'],
      flagAssetPath: 'packages/world_picker/assets/flags/IN.svg',
    ),
    Country(
      isoCode: 'KR',
      name: 'South Korea',
      continent: continent,
      languages: [Language(code: 'ko', name: 'Korean', nativeName: '한국어')],
      currencies: [Currency(code: 'KRW', name: 'Won', symbol: '₩')],
      dialCode: '+82',
      phonePattern: r'^\+82\d{9,10}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Seoul'],
      flagAssetPath: 'packages/world_picker/assets/flags/KR.svg',
    ),
    Country(
      isoCode: 'ID',
      name: 'Indonesia',
      continent: continent,
      languages: [
        Language(code: 'id', name: 'Indonesian', nativeName: 'Bahasa Indonesia')
      ],
      currencies: [Currency(code: 'IDR', name: 'Rupiah', symbol: 'Rp')],
      dialCode: '+62',
      phonePattern: r'^\+62\d{9,11}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Jakarta'],
      flagAssetPath: 'packages/world_picker/assets/flags/ID.svg',
    ),
    Country(
      isoCode: 'PK',
      name: 'Pakistan',
      continent: continent,
      languages: [
        Language(code: 'ur', name: 'Urdu', nativeName: 'اُردُو'),
        Language(code: 'en', name: 'English', nativeName: 'English')
      ],
      currencies: [Currency(code: 'PKR', name: 'Rupee', symbol: '₨')],
      dialCode: '+92',
      phonePattern: r'^\+92\d{10}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Karachi'],
      flagAssetPath: 'packages/world_picker/assets/flags/PK.svg',
    ),
    Country(
      isoCode: 'BD',
      name: 'Bangladesh',
      continent: continent,
      languages: [Language(code: 'bn', name: 'Bengali', nativeName: 'বাংলা')],
      currencies: [Currency(code: 'BDT', name: 'Taka', symbol: '৳')],
      dialCode: '+880',
      phonePattern: r'^\+880\d{10}$',
      zipCodePattern: r'^\d{4}$',
      timezones: ['Asia/Dhaka'],
      flagAssetPath: 'packages/world_picker/assets/flags/BD.svg',
    ),
    Country(
      isoCode: 'RU',
      name: 'Russia',
      continent: continent,
      languages: [Language(code: 'ru', name: 'Russian', nativeName: 'Русский')],
      currencies: [Currency(code: 'RUB', name: 'Ruble', symbol: '₽')],
      dialCode: '+7',
      phonePattern: r'^\+7\d{10}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Moscow'],
      flagAssetPath: 'packages/world_picker/assets/flags/RU.svg',
    ),
    Country(
      isoCode: 'TR',
      name: 'Turkey',
      continent: continent,
      languages: [Language(code: 'tr', name: 'Turkish', nativeName: 'Türkçe')],
      currencies: [Currency(code: 'TRY', name: 'Lira', symbol: '₺')],
      dialCode: '+90',
      phonePattern: r'^\+90\d{10}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Europe/Istanbul'],
      flagAssetPath: 'packages/world_picker/assets/flags/TR.svg',
    ),
    Country(
      isoCode: 'SA',
      name: 'Saudi Arabia',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'SAR', name: 'Riyal', symbol: 'ر.س')],
      dialCode: '+966',
      phonePattern: r'^\+966\d{9}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Riyadh'],
      flagAssetPath: 'packages/world_picker/assets/flags/SA.svg',
    ),
    Country(
      isoCode: 'IR',
      name: 'Iran',
      continent: continent,
      languages: [Language(code: 'fa', name: 'Persian', nativeName: 'فارسی')],
      currencies: [Currency(code: 'IRR', name: 'Rial', symbol: '﷼')],
      dialCode: '+98',
      phonePattern: r'^\+98\d{10}$',
      zipCodePattern: r'^\d{10}$',
      timezones: ['Asia/Tehran'],
      flagAssetPath: 'packages/world_picker/assets/flags/IR.svg',
    ),
    Country(
      isoCode: 'TH',
      name: 'Thailand',
      continent: continent,
      languages: [Language(code: 'th', name: 'Thai', nativeName: 'ไทย')],
      currencies: [Currency(code: 'THB', name: 'Baht', symbol: '฿')],
      dialCode: '+66',
      phonePattern: r'^\+66\d{9}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Bangkok'],
      flagAssetPath: 'packages/world_picker/assets/flags/TH.svg',
    ),
    Country(
      isoCode: 'VN',
      name: 'Vietnam',
      continent: continent,
      languages: [
        Language(code: 'vi', name: 'Vietnamese', nativeName: 'Tiếng Việt')
      ],
      currencies: [Currency(code: 'VND', name: 'Dong', symbol: '₫')],
      dialCode: '+84',
      phonePattern: r'^\+84\d{9,10}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Ho_Chi_Minh'],
      flagAssetPath: 'packages/world_picker/assets/flags/VN.svg',
    ),
    Country(
      isoCode: 'PH',
      name: 'Philippines',
      continent: continent,
      languages: [
        Language(code: 'en', name: 'English', nativeName: 'English'),
        Language(code: 'tl', name: 'Tagalog', nativeName: 'Tagalog')
      ],
      currencies: [Currency(code: 'PHP', name: 'Peso', symbol: '₱')],
      dialCode: '+63',
      phonePattern: r'^\+63\d{10}$',
      zipCodePattern: r'^\d{4}$',
      timezones: ['Asia/Manila'],
      flagAssetPath: 'packages/world_picker/assets/flags/PH.svg',
    ),
    Country(
      isoCode: 'MY',
      name: 'Malaysia',
      continent: continent,
      languages: [
        Language(code: 'ms', name: 'Malay', nativeName: 'Bahasa Melayu')
      ],
      currencies: [Currency(code: 'MYR', name: 'Ringgit', symbol: 'RM')],
      dialCode: '+60',
      phonePattern: r'^\+60\d{9,10}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Kuala_Lumpur'],
      flagAssetPath: 'packages/world_picker/assets/flags/MY.svg',
    ),
    Country(
      isoCode: 'SG',
      name: 'Singapore',
      continent: continent,
      languages: [
        Language(code: 'en', name: 'English', nativeName: 'English'),
        Language(code: 'ms', name: 'Malay', nativeName: 'Bahasa Melayu'),
        Language(code: 'zh', name: 'Chinese', nativeName: '中文'),
        Language(code: 'ta', name: 'Tamil', nativeName: 'தமிழ்')
      ],
      currencies: [
        Currency(code: 'SGD', name: 'Singapore Dollar', symbol: 'S\u000024')
      ],
      dialCode: '+65',
      phonePattern: r'^\+65\d{8}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Singapore'],
      flagAssetPath: 'packages/world_picker/assets/flags/SG.svg',
    ),
    Country(
      isoCode: 'AE',
      name: 'United Arab Emirates',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'AED', name: 'Dirham', symbol: 'د.إ')],
      dialCode: '+971',
      phonePattern: r'^\+971\d{9}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Dubai'],
      flagAssetPath: 'packages/world_picker/assets/flags/AE.svg',
    ),

    // Western Asia / Middle East
    Country(
      isoCode: 'AF',
      name: 'Afghanistan',
      continent: continent,
      languages: [
        Language(code: 'ps', name: 'Pashto', nativeName: 'پښتو'),
        Language(code: 'fa', name: 'Dari', nativeName: 'دری')
      ],
      currencies: [Currency(code: 'AFN', name: 'Afghani', symbol: '؋')],
      dialCode: '+93',
      phonePattern: r'^\+93\d{9}$',
      zipCodePattern: r'^\d{4}$',
      timezones: ['Asia/Kabul'],
      flagAssetPath: 'packages/world_picker/assets/flags/AF.svg',
    ),
    Country(
      isoCode: 'AM',
      name: 'Armenia',
      continent: continent,
      languages: [
        Language(code: 'hy', name: 'Armenian', nativeName: 'Հայերեն')
      ],
      currencies: [Currency(code: 'AMD', name: 'Dram', symbol: '֏')],
      dialCode: '+374',
      phonePattern: r'^\+374\d{8}$',
      zipCodePattern: r'^\d{4}$',
      timezones: ['Asia/Yerevan'],
      flagAssetPath: 'packages/world_picker/assets/flags/AM.svg',
    ),
    Country(
      isoCode: 'AZ',
      name: 'Azerbaijan',
      continent: continent,
      languages: [
        Language(code: 'az', name: 'Azerbaijani', nativeName: 'Azərbaycan')
      ],
      currencies: [Currency(code: 'AZN', name: 'Manat', symbol: '₼')],
      dialCode: '+994',
      phonePattern: r'^\+994\d{9}$',
      zipCodePattern: r'^\d{4}$',
      timezones: ['Asia/Baku'],
      flagAssetPath: 'packages/world_picker/assets/flags/AZ.svg',
    ),
    Country(
      isoCode: 'BH',
      name: 'Bahrain',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'BHD', name: 'Dinar', symbol: '.د.ب')],
      dialCode: '+973',
      phonePattern: r'^\+973\d{8}$',
      zipCodePattern: r'^\d{3,4}$',
      timezones: ['Asia/Bahrain'],
      flagAssetPath: 'packages/world_picker/assets/flags/BH.svg',
    ),
    Country(
      isoCode: 'GE',
      name: 'Georgia',
      continent: continent,
      languages: [
        Language(code: 'ka', name: 'Georgian', nativeName: 'ქართული')
      ],
      currencies: [Currency(code: 'GEL', name: 'Lari', symbol: '₾')],
      dialCode: '+995',
      phonePattern: r'^\+995\d{9}$',
      zipCodePattern: r'^\d{4}$',
      timezones: ['Asia/Tbilisi'],
      flagAssetPath: 'packages/world_picker/assets/flags/GE.svg',
    ),
    Country(
      isoCode: 'IQ',
      name: 'Iraq',
      continent: continent,
      languages: [
        Language(code: 'ar', name: 'Arabic', nativeName: 'العربية'),
        Language(code: 'ku', name: 'Kurdish', nativeName: 'کوردی')
      ],
      currencies: [Currency(code: 'IQD', name: 'Dinar', symbol: 'ع.د')],
      dialCode: '+964',
      phonePattern: r'^\+964\d{10}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Baghdad'],
      flagAssetPath: 'packages/world_picker/assets/flags/IQ.svg',
    ),
    Country(
      isoCode: 'IL',
      name: 'Israel',
      continent: continent,
      languages: [
        Language(code: 'he', name: 'Hebrew', nativeName: 'עברית'),
        Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')
      ],
      currencies: [Currency(code: 'ILS', name: 'Shekel', symbol: '₪')],
      dialCode: '+972',
      phonePattern: r'^\+972\d{9}$',
      zipCodePattern: r'^\d{5,7}$',
      timezones: ['Asia/Jerusalem'],
      flagAssetPath: 'packages/world_picker/assets/flags/IL.svg',
    ),
    Country(
      isoCode: 'JO',
      name: 'Jordan',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'JOD', name: 'Dinar', symbol: 'د.ا')],
      dialCode: '+962',
      phonePattern: r'^\+962\d{9}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Amman'],
      flagAssetPath: 'packages/world_picker/assets/flags/JO.svg',
    ),
    Country(
      isoCode: 'KW',
      name: 'Kuwait',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'KWD', name: 'Dinar', symbol: 'د.ك')],
      dialCode: '+965',
      phonePattern: r'^\+965\d{8}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Kuwait'],
      flagAssetPath: 'packages/world_picker/assets/flags/KW.svg',
    ),
    Country(
      isoCode: 'LB',
      name: 'Lebanon',
      continent: continent,
      languages: [
        Language(code: 'ar', name: 'Arabic', nativeName: 'العربية'),
        Language(code: 'fr', name: 'French', nativeName: 'Français')
      ],
      currencies: [Currency(code: 'LBP', name: 'Pound', symbol: 'ل.ل')],
      dialCode: '+961',
      phonePattern: r'^\+961\d{8}$',
      zipCodePattern: r'^\d{4,8}$',
      timezones: ['Asia/Beirut'],
      flagAssetPath: 'packages/world_picker/assets/flags/LB.svg',
    ),
    Country(
      isoCode: 'OM',
      name: 'Oman',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'OMR', name: 'Rial', symbol: 'ر.ع.')],
      dialCode: '+968',
      phonePattern: r'^\+968\d{8}$',
      zipCodePattern: r'^\d{3}$',
      timezones: ['Asia/Muscat'],
      flagAssetPath: 'packages/world_picker/assets/flags/OM.svg',
    ),
    Country(
      isoCode: 'PS',
      name: 'Palestine',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [
        Currency(code: 'ILS', name: 'Israeli Shekel', symbol: '₪'),
        Currency(code: 'JOD', name: 'Jordanian Dinar', symbol: 'د.ا'),
        Currency(code: 'USD', name: 'US Dollar', symbol: '\$')
      ],
      dialCode: '+970',
      phonePattern: r'^\+970\d{9}$',
      zipCodePattern: r'^$',
      timezones: ['Asia/Gaza', 'Asia/Hebron'],
      flagAssetPath: 'packages/world_picker/assets/flags/PS.svg',
    ),
    Country(
      isoCode: 'QA',
      name: 'Qatar',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'QAR', name: 'Riyal', symbol: 'ر.ق')],
      dialCode: '+974',
      phonePattern: r'^\+974\d{8}$',
      zipCodePattern: r'^$',
      timezones: ['Asia/Qatar'],
      flagAssetPath: 'packages/world_picker/assets/flags/QA.svg',
    ),
    Country(
      isoCode: 'SY',
      name: 'Syria',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'SYP', name: 'Pound', symbol: 'ل.س')],
      dialCode: '+963',
      phonePattern: r'^\+963\d{9}$',
      zipCodePattern: r'^$',
      timezones: ['Asia/Damascus'],
      flagAssetPath: 'packages/world_picker/assets/flags/SY.svg',
    ),
    Country(
      isoCode: 'YE',
      name: 'Yemen',
      continent: continent,
      languages: [Language(code: 'ar', name: 'Arabic', nativeName: 'العربية')],
      currencies: [Currency(code: 'YER', name: 'Rial', symbol: '﷼')],
      dialCode: '+967',
      phonePattern: r'^\+967\d{9}$',
      zipCodePattern: r'^$',
      timezones: ['Asia/Aden'],
      flagAssetPath: 'packages/world_picker/assets/flags/YE.svg',
    ),

    // Central Asia
    Country(
      isoCode: 'KZ',
      name: 'Kazakhstan',
      continent: continent,
      languages: [
        Language(code: 'kk', name: 'Kazakh', nativeName: 'Қазақ тілі'),
        Language(code: 'ru', name: 'Russian', nativeName: 'Русский')
      ],
      currencies: [Currency(code: 'KZT', name: 'Tenge', symbol: '₸')],
      dialCode: '+7',
      phonePattern: r'^\+7\d{10}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Almaty', 'Asia/Qyzylorda'],
      flagAssetPath: 'packages/world_picker/assets/flags/KZ.svg',
    ),
    Country(
      isoCode: 'KG',
      name: 'Kyrgyzstan',
      continent: continent,
      languages: [
        Language(code: 'ky', name: 'Kyrgyz', nativeName: 'Кыргызча'),
        Language(code: 'ru', name: 'Russian', nativeName: 'Русский')
      ],
      currencies: [Currency(code: 'KGS', name: 'Som', symbol: 'лв')],
      dialCode: '+996',
      phonePattern: r'^\+996\d{9}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Bishkek'],
      flagAssetPath: 'packages/world_picker/assets/flags/KG.svg',
    ),
    Country(
      isoCode: 'TJ',
      name: 'Tajikistan',
      continent: continent,
      languages: [
        Language(code: 'tg', name: 'Tajik', nativeName: 'Тоҷикӣ'),
        Language(code: 'ru', name: 'Russian', nativeName: 'Русский')
      ],
      currencies: [Currency(code: 'TJS', name: 'Somoni', symbol: 'ЅМ')],
      dialCode: '+992',
      phonePattern: r'^\+992\d{9}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Dushanbe'],
      flagAssetPath: 'packages/world_picker/assets/flags/TJ.svg',
    ),
    Country(
      isoCode: 'TM',
      name: 'Turkmenistan',
      continent: continent,
      languages: [
        Language(code: 'tk', name: 'Turkmen', nativeName: 'Türkmençe')
      ],
      currencies: [Currency(code: 'TMT', name: 'Manat', symbol: 'T')],
      dialCode: '+993',
      phonePattern: r'^\+993\d{8}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Ashgabat'],
      flagAssetPath: 'packages/world_picker/assets/flags/TM.svg',
    ),
    Country(
      isoCode: 'UZ',
      name: 'Uzbekistan',
      continent: continent,
      languages: [
        Language(code: 'uz', name: 'Uzbek', nativeName: 'Oʻzbek'),
        Language(code: 'ru', name: 'Russian', nativeName: 'Русский')
      ],
      currencies: [Currency(code: 'UZS', name: 'Som', symbol: 'лв')],
      dialCode: '+998',
      phonePattern: r'^\+998\d{9}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Tashkent'],
      flagAssetPath: 'packages/world_picker/assets/flags/UZ.svg',
    ),

    // South Asia
    Country(
      isoCode: 'BT',
      name: 'Bhutan',
      continent: continent,
      languages: [Language(code: 'dz', name: 'Dzongkha', nativeName: 'རྫོང་ཁ')],
      currencies: [
        Currency(code: 'BTN', name: 'Ngultrum', symbol: 'Nu.'),
        Currency(code: 'INR', name: 'Indian Rupee', symbol: '₹')
      ],
      dialCode: '+975',
      phonePattern: r'^\+975\d{8}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Thimphu'],
      flagAssetPath: 'packages/world_picker/assets/flags/BT.svg',
    ),
    Country(
      isoCode: 'MV',
      name: 'Maldives',
      continent: continent,
      languages: [
        Language(code: 'dv', name: 'Maldivian', nativeName: 'ދިވެހި')
      ],
      currencies: [Currency(code: 'MVR', name: 'Rufiyaa', symbol: '.ރ')],
      dialCode: '+960',
      phonePattern: r'^\+960\d{7}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Indian/Maldives'],
      flagAssetPath: 'packages/world_picker/assets/flags/MV.svg',
    ),
    Country(
      isoCode: 'NP',
      name: 'Nepal',
      continent: continent,
      languages: [Language(code: 'ne', name: 'Nepali', nativeName: 'नेपाली')],
      currencies: [Currency(code: 'NPR', name: 'Rupee', symbol: '₨')],
      dialCode: '+977',
      phonePattern: r'^\+977\d{10}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Kathmandu'],
      flagAssetPath: 'packages/world_picker/assets/flags/NP.svg',
    ),
    Country(
      isoCode: 'LK',
      name: 'Sri Lanka',
      continent: continent,
      languages: [
        Language(code: 'si', name: 'Sinhala', nativeName: 'සිංහල'),
        Language(code: 'ta', name: 'Tamil', nativeName: 'தமிழ்')
      ],
      currencies: [Currency(code: 'LKR', name: 'Rupee', symbol: '₨')],
      dialCode: '+94',
      phonePattern: r'^\+94\d{9}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Colombo'],
      flagAssetPath: 'packages/world_picker/assets/flags/LK.svg',
    ),

    // Southeast Asia
    Country(
      isoCode: 'BN',
      name: 'Brunei',
      continent: continent,
      languages: [
        Language(code: 'ms', name: 'Malay', nativeName: 'Bahasa Melayu'),
        Language(code: 'en', name: 'English', nativeName: 'English')
      ],
      currencies: [Currency(code: 'BND', name: 'Dollar', symbol: '\$')],
      dialCode: '+673',
      phonePattern: r'^\+673\d{7}$',
      zipCodePattern: r'^[A-Z]{2}\d{4}$',
      timezones: ['Asia/Brunei'],
      flagAssetPath: 'packages/world_picker/assets/flags/BN.svg',
    ),
    Country(
      isoCode: 'KH',
      name: 'Cambodia',
      continent: continent,
      languages: [Language(code: 'km', name: 'Khmer', nativeName: 'ខ្មែរ')],
      currencies: [
        Currency(code: 'KHR', name: 'Riel', symbol: '៛'),
        Currency(code: 'USD', name: 'US Dollar', symbol: '\$')
      ],
      dialCode: '+855',
      phonePattern: r'^\+855\d{8,9}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Phnom_Penh'],
      flagAssetPath: 'packages/world_picker/assets/flags/KH.svg',
    ),
    Country(
      isoCode: 'LA',
      name: 'Laos',
      continent: continent,
      languages: [Language(code: 'lo', name: 'Lao', nativeName: 'ພາສາລາວ')],
      currencies: [Currency(code: 'LAK', name: 'Kip', symbol: '₭')],
      dialCode: '+856',
      phonePattern: r'^\+856\d{8}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Vientiane'],
      flagAssetPath: 'packages/world_picker/assets/flags/LA.svg',
    ),
    Country(
      isoCode: 'MM',
      name: 'Myanmar',
      continent: continent,
      languages: [Language(code: 'my', name: 'Burmese', nativeName: 'ဗမာစာ')],
      currencies: [Currency(code: 'MMK', name: 'Kyat', symbol: 'Ks')],
      dialCode: '+95',
      phonePattern: r'^\+95\d{8,10}$',
      zipCodePattern: r'^\d{5}$',
      timezones: ['Asia/Yangon'],
      flagAssetPath: 'packages/world_picker/assets/flags/MM.svg',
    ),
    Country(
      isoCode: 'TL',
      name: 'Timor-Leste',
      continent: continent,
      languages: [
        Language(code: 'pt', name: 'Portuguese', nativeName: 'Português'),
        Language(code: 'tet', name: 'Tetum', nativeName: 'Tetun')
      ],
      currencies: [Currency(code: 'USD', name: 'US Dollar', symbol: '\$')],
      dialCode: '+670',
      phonePattern: r'^\+670\d{8}$',
      zipCodePattern: r'^$',
      timezones: ['Asia/Dili'],
      flagAssetPath: 'packages/world_picker/assets/flags/TL.svg',
    ),

    // East Asia
    Country(
      isoCode: 'KP',
      name: 'North Korea',
      continent: continent,
      languages: [Language(code: 'ko', name: 'Korean', nativeName: '한국어')],
      currencies: [Currency(code: 'KPW', name: 'Won', symbol: '₩')],
      dialCode: '+850',
      phonePattern: r'^\+850\d{8}$',
      zipCodePattern: r'^$',
      timezones: ['Asia/Pyongyang'],
      flagAssetPath: 'packages/world_picker/assets/flags/KP.svg',
    ),
    Country(
      isoCode: 'MN',
      name: 'Mongolia',
      continent: continent,
      languages: [
        Language(code: 'mn', name: 'Mongolian', nativeName: 'Монгол')
      ],
      currencies: [Currency(code: 'MNT', name: 'Tugrik', symbol: '₮')],
      dialCode: '+976',
      phonePattern: r'^\+976\d{8}$',
      zipCodePattern: r'^\d{6}$',
      timezones: ['Asia/Ulaanbaatar'],
      flagAssetPath: 'packages/world_picker/assets/flags/MN.svg',
    ),
  ];
}