﻿# ***************************************************************************
# *
# *  Copyright (C) 2004-2009, International Business Machines
# *  Corporation; Unicode, Inc.; and others.  All Rights Reserved.
# *
# ***************************************************************************
# File: Kirghiz_Latin_BGN.txt
# Generated from CLDR 
#
:: [АБВГДЕЁЖЗИЙКЛМНҢОӨПРСТУҮФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнңоөпрстуүфхцчшщъыьэюя] ;
:: NFD (NFC) ;
$prime  = ʹ ;
$doublePrime = ʺ ;
$upperConsonants = [БВГДЖЗЙКЛМНҢПРСТФХЦЧШЩЪЬ] ;
$lowerConsonants = [бвгджзйклмнңпрстфхцчшщъь] ;
$consonants = [$upperConsonants $lowerConsonants] ;
$upperVowels = [АЕЁИОӨУҮЫЭЮЯ] ;
$lowerVowels = [аеёиоөуүыэюя] ;
$vowels = [$upperVowels $lowerVowels] ;
$lower = [$lowerConsonants $lowerVowels] ;
$wordBoundary =  [^[:L:][:M:][:N:]] ;
А → A ; # CYRILLIC CAPITAL LETTER A
а → a ; # CYRILLIC SMALL LETTER A
Б → B ; # CYRILLIC CAPITAL LETTER BE
б → b ; # CYRILLIC SMALL LETTER BE
В → V ; # CYRILLIC CAPITAL LETTER VE
в → v ; # CYRILLIC SMALL LETTER VE
Г → G ; # CYRILLIC CAPITAL LETTER GHE
г → g ; # CYRILLIC SMALL LETTER GHE
Д → D ; # CYRILLIC CAPITAL LETTER DE
д → d ; # CYRILLIC SMALL LETTER DE
Е → E ; # CYRILLIC CAPITAL LETTER IE
е → e ; # CYRILLIC SMALL LETTER IE
Ё} $lower → Yo ; # CYRILLIC CAPITAL LETTER IO
Ё → YO ; # CYRILLIC CAPITAL LETTER IO
ё → yo ; # CYRILLIC SMALL LETTER IO
Ж → J ; # CYRILLIC CAPITAL LETTER ZHE
ж → j ; # CYRILLIC SMALL LETTER ZHE
З → Z ; # CYRILLIC CAPITAL LETTER ZE
з → z ; # CYRILLIC SMALL LETTER ZE
И → I ; # CYRILLIC CAPITAL LETTER I
и → i ; # CYRILLIC SMALL LETTER I
Й → Y ; # CYRILLIC CAPITAL LETTER I
й → y ; # CYRILLIC SMALL LETTER I
К → K ; # CYRILLIC CAPITAL LETTER KA
к → k ; # CYRILLIC SMALL LETTER KA
Л → L ; # CYRILLIC CAPITAL LETTER EL
л → l ; # CYRILLIC SMALL LETTER EL
М → M ; # CYRILLIC CAPITAL LETTER EM
м → m ; # CYRILLIC SMALL LETTER EM
НГ → N·G ; # CYRILLIC CAPITAL LETTER EN
Нг → N·g ; # CYRILLIC CAPITAL LETTER EN
нг → n·g ; # CYRILLIC SMALL LETTER EN
Н → N ; # CYRILLIC CAPITAL LETTER EN
н → n ; # CYRILLIC SMALL LETTER EN
Ң} $lower → Ng ; # CYRILLIC CAPITAL LETTER EN WITH DESCENDER
Ң → NG ; # CYRILLIC CAPITAL LETTER EN WITH DESCENDER
ң → ng ; # CYRILLIC SMALL LETTER EN WITH DESCENDER
О → O ; # CYRILLIC CAPITAL LETTER O
о → o ; # CYRILLIC SMALL LETTER O
Ө → Ö ; # CYRILLIC CAPITAL LETTER BARRED O
ө → ö ; # CYRILLIC SMALL LETTER BARRED O
П → P ; # CYRILLIC CAPITAL LETTER PE
п → p ; # CYRILLIC SMALL LETTER PE
Р → R ; # CYRILLIC CAPITAL LETTER ER
р → r ; # CYRILLIC SMALL LETTER ER
С → S ; # CYRILLIC CAPITAL LETTER ES
с → s ; # CYRILLIC SMALL LETTER ES
Т → T ; # CYRILLIC CAPITAL LETTER TE
т → t ; # CYRILLIC SMALL LETTER TE
У → U ; # CYRILLIC CAPITAL LETTER U
у → u ; # CYRILLIC SMALL LETTER U
Ү → Ü ; # CYRILLIC CAPITAL LETTER STRAIGHT U
ү → ü ; # CYRILLIC SMALL LETTER STRAIGHT U
Ф → F ; # CYRILLIC CAPITAL LETTER EF
ф → f ; # CYRILLIC SMALL LETTER EF
Х} $lower → Kh ; # CYRILLIC CAPITAL LETTER HA
Х → KH ; # CYRILLIC CAPITAL LETTER HA
х → kh ; # CYRILLIC SMALL LETTER HA
Ц} $lower → Ts ; # CYRILLIC CAPITAL LETTER TSE
Ц → TS ; # CYRILLIC CAPITAL LETTER TSE
ц → ts ; # CYRILLIC SMALL LETTER TSE
Ч} $lower → Ch ; # CYRILLIC CAPITAL LETTER CHE
Ч → CH ; # CYRILLIC CAPITAL LETTER CHE
ч → ch ; # CYRILLIC SMALL LETTER CHE
ШЧ → SH·CH ; # CYRILLIC CAPITAL LETTER SHA
Шч → Sh·ch ; # CYRILLIC CAPITAL LETTER SHA
шч → sh·ch ; # CYRILLIC SMALL LETTER SHA
Ш} $lower → Sh ; # CYRILLIC CAPITAL LETTER SHA
Ш → SH ; # CYRILLIC CAPITAL LETTER SHA
ш → sh ; # CYRILLIC SMALL LETTER SHA
Щ} $lower → Shch ; # CYRILLIC CAPITAL LETTER SHCHA
Щ → SHCH ; # CYRILLIC CAPITAL LETTER SHCHA
щ → shch ; # CYRILLIC SMALL LETTER SHCHA
Ъ → $doublePrime ; # CYRILLIC CAPITAL LETTER HARD SIGN
ъ → $doublePrime ; # CYRILLIC SMALL LETTER HARD SIGN
Ы → Y ; # CYRILLIC CAPITAL LETTER YERU
ы → y ; # CYRILLIC SMALL LETTER YERU
Ь → $prime ; # CYRILLIC CAPITAL LETTER SOFT SIGN
ь → $prime ; # CYRILLIC SMALL LETTER SOFT SIGN
Э → E ; # CYRILLIC CAPITAL LETTER E
э → e ; # CYRILLIC SMALL LETTER E
Ю} $lower → Yu ; # CYRILLIC CAPITAL LETTER YU
Ю → YU ; # CYRILLIC CAPITAL LETTER YU
ю → yu ; # CYRILLIC SMALL LETTER YU
Я} $lower → Ya ; # CYRILLIC CAPITAL LETTER YA
Я → YA ; # CYRILLIC CAPITAL LETTER YA
я → ya ; # CYRILLIC SMALL LETTER YA
