use utf8;
# this is ucsequivs
'#' => chr(0x0486),
'$' => chr(0x0486) . chr(0x0301),
'%' => chr(0x0486) . chr(0x0300),
'&' => chr(0x0483),
'*' => chr(0xA673),
'+' => chr(0x2DE1) . chr(0x0487), # combining VE
'0' => chr(0x043E) . chr(0x0301),
'1' => chr(0x0301),
'2' => chr(0x0300),
'3' => chr(0x0486),
'4' => chr(0x0486) . chr(0x0301),
'5' => chr(0x0486) . chr(0x0300),
'6' => chr(0x0311), # combining inverted breve
'7' => chr(0x0483), # titlo
'8' => chr(0x033E), # combining vertical tilde
'9' => chr(0x0436) . chr(0x0483), # zhe with titlo above
'<' => chr(0x2DEF), # combining HA
'=' => chr(0x2DE9) . chr(0x0487), # combining EN
'>' => chr(0x2DEC) . chr(0x0487), # combining ER
'?' => chr(0x2DF1) . chr(0x0487), # combining CHE
'@' => chr(0x0300),
'A' => chr(0x0430) . chr(0x0300), # latin A maps to AZ with grave accent
'B' => chr(0x0463) . chr(0x0311), # latin B maps to Yat' with inverted breve
'C' => chr(0x2DED) . chr(0x0487), # combining ES
'D' => chr(0x0434) . chr(0x2DED) . chr(0x0487),
'E' => chr(0x0435) . chr(0x0300), # latin E maps to e with grave accent
'F' => chr(0x0472), # F maps to THETA
'G' => chr(0x0433) . chr(0x0483), # G maps to ge with TITLO
'H' => chr(0x0461) . chr(0x0301), # latin H maps to omega with acute accent
'I' => chr(0x0406),
'J' => chr(0x0456) . chr(0x0300), 
'K' => chr(0xA656) . chr(0x0486), # YA with psili
'L' => chr(0x043B) . chr(0x2DE3), # el with cobining de
'M' => chr(0x0476), # capital IZHITSA with kendema
'N' => chr(0x047A) . chr(0x0486), # capital WIDE ON with psili
'O' => chr(0x047A), # just capital WIDE ON
'P' => chr(0x0470), # capital PSI
'Q' => chr(0x047C), # capital omega with great apostrophe
'R' => chr(0x0440) . chr(0x0483), # lowercase re with titlo
'S' => chr(0x0467) . chr(0x0300), # lowercase small yus with grave
'T' => chr(0x047E), # capital OT
'U' => chr(0x041E) . chr(0x0443), # diagraph capital UK
'V' => chr(0x0474), # capital IZHITSA
'W' => chr(0x0460), # capital OMEGA
'X' => chr(0x046E), # capital XI
'Y' => chr(0xA64B) . chr(0x0300), # monograph uk with grave
'Z' => chr(0x0466), # capital SMALL YUS
'\\' => chr(0x0483), # yet another titlo 
'^' => chr(0x0311), # combining inverted breve
'_' => chr(0x033E), # yet another yerik
'a' => chr(0x0430) . chr(0x0301), # latin A maps to AZ with acute accent
'b' => chr(0x2DEA) . chr(0x0487), # combining ON
'c' => chr(0x2DED) . chr(0x0487), # combining ES
'd' => chr(0x2DE3), # combining DE
'e' => chr(0x0435) . chr(0x0301), # latin E maps to e with acute accent
'f' => chr(0x0473), # lowercase theta
'g' => chr(0x2DE2) . chr(0x0487), # combining ge
'h' => chr(0x044B) . chr(0x0301), # ery with acute accent
'i' => chr(0x0456),
'j' => chr(0x0456) . chr(0x0301), # i with acute accent
'k' => chr(0xA657) . chr(0x0486), # iotaed a with psili
'l' => chr(0x043B) . chr(0x0483), # el with titlo
'm' => chr(0x0477), # izhitsa with izhe titlo
'n' => chr(0x047B) . chr(0x0486), # wide on with psili
'o' => chr(0x047B), # wide on
'p' => chr(0x0471), # lowercase psi
'q' => chr(0x047D), # lowercase omega with great apostrophe
'r' => chr(0x0440) . chr(0x2DED) . chr(0x0487), # lowercase er with combining es
's' => chr(0x0467) . chr(0x0301), # lowercase small yus with acute accent
't' => chr(0x047F), # lowercase ot
'u' => chr(0x1C82) . chr(0x0443), # diagraph uk
'v' => chr(0x0475), # lowercase izhitsa
'w' => chr(0x0461), # lowercase omega
'x' => chr(0x046F), # lowercase xi
'y' => chr(0xA64B) . chr(0x0301), # monograph uk with acute accent
'z' => chr(0x0467), # lowercase small yus
'{' => chr(0xA64B) . chr(0x0311), # monograph uk with inverted breve
'|' => chr(0x0467) . chr(0x0486) . chr(0x0300), # lowercase small yus with apostroph
'}' => chr(0x0438) . chr(0x0483), # the numeral eight
'~' => chr(0x0301), # yet another acute accent
### SECOND HALF IS THE CYRILLIC BLOCK
'Ђ' => chr(0x0475) . chr(0x0301), # lowercase izhitsa with acute
'Ѓ' => chr(0x0410) . chr(0x0486) . chr(0x0301), # uppercase A with psili and acute
'‚' => chr(0x201A),
'ѓ' => chr(0x0430) . chr(0x0486) . chr(0x0301), # lowercase A with psili and acute
'„' => chr(0x201E),
'…' => chr(0x046F) . chr(0x0483), # the numberal sixty
'†' => chr(0x0430) . chr(0x0311), # lowercase a with inverted breve
'‡' => chr(0x0456) . chr(0x0311), # lowercase i with inverted breve
'€' => chr(0x2DE5), # combining ze
'‰' => chr(0x0467) . chr(0x0311), # lowercase small yus with inverted breve
'Љ' => chr(0x0466) . chr(0x0486), # upercase small yus with psili
'‹' => chr(0x0456) . chr(0x0483), # the numeral ten
'Њ' => chr(0x0460) . chr(0x0486), # capital OMEGA with psili
'Ќ' => chr(0x041E) . chr(0x0443) . chr(0x0486) . chr(0x0301), # diagraph uk with apostroph
'Ћ' => chr(0xA656) . chr(0x0486) . chr(0x0301), # uppercase Iotated A with apostroph
'Џ' => chr(0x047A) . chr(0x0486) . chr(0x0301), # uppercase Round O with apostroph
'ђ' => chr(0x0475) . chr(0x2DE2) . chr(0x0487), # lowercase izhitsa with combining ge
'‘' => chr(0x2018),
'’' => chr(0x2019),
'“' => chr(0x201C),
 '”' => chr(0x201D),
 '•' => chr(0x2DE4), # combining zhe
'–' => chr(0x2013),
 '—' => chr(0x2014),
 '™' => chr(0x0442) . chr(0x0483),
'љ' => chr(0x0467) . chr(0x0486), # lowercase small yus with psili
'›' => chr(0x0475) . chr(0x0311), # izhitsa with inverted breve
'њ' => chr(0x0461) . chr(0x0486), # lowercase omega with psili
'ќ' => chr(0x1C82) . chr(0x0443) . chr(0x0486) . chr(0x0301), # diagraph uk with apostroph
 'ћ' => chr(0xA657) . chr(0x0486) . chr(0x0301), # lowercase iotaed a with apostroph
 'џ' => chr(0x047B) . chr(0x0486) . chr(0x0301), # lowercase Round O with apostroph
'Ў' => chr(0x041E) . chr(0x0443) . chr(0x0486), # Capital Diagraph Uk with psili
'ў' => chr(0x1C82) . chr(0x0443) . chr(0x0486), # lowercase of the above
'Ј' => chr(0x0406) . chr(0x0486) . chr(0x0301), # Uppercase I with apostroph
'¤' => chr(0x0482), # cyrillic thousands sign
'Ґ' => chr(0x0410) . chr(0x0486), # capital A with psili
'¦' => chr(0x0445) . chr(0x0483), # lowercase kha with titlo
'§' => chr(0x0447) . chr(0x0483), # the numeral ninety
'Ё' => chr(0x0463) . chr(0x0300), # lowecase yat with grave accent
'©' => chr(0x0441) . chr(0x0483), # the numeral two hundred
'«' => chr(0x00AB), 
'¬' => chr(0x00AC),
'®' => chr(0x0440) . chr(0x2DE3), # lowercase er with dobro titlo
'Ї' => chr(0x0406) . chr(0x0486),
'°' => chr(0xA67E), # kavyka
'±' => chr(0xA657) . chr(0x0486) . chr(0x0300),
'І' => chr(0x0406),
'і' => chr(0x0456) . chr(0x0308),
'ґ' => chr(0x0430) . chr(0x0486),
'µ' => chr(0x0443), # small letter u (why encoded at the micro sign?!)
'ё' => chr(0x0463) . chr(0x0301), # lowercase yat with acute accent
'№' => chr(0x0430) . chr(0x0483), # the numeral one
'є' => chr(0x0454), # wide E
'»' => chr(0x00BB),
'ј' => chr(0x0456) . chr(0x0486) . chr(0x0301), # lowercase i with apostroph
'Ѕ' => chr(0x0405),
'ѕ' => chr(0x0455),
'ї' => chr(0x0456) . chr(0x0486), # lowercase i with psili
'У' => chr(0xA64A),
'Э' => chr(0x0462), # capital yat
'Я' => chr(0xA656), # capital Iotified A
'у' => chr(0xA64B), # monograph Uk (why?!)
'э' => chr(0x0463), # lowercase yat
'я' => chr(0xA657), # iotaed a
