UNPKG

taipa

Version:

Taiwanese morphological parsing library

745 lines 49.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.composeTaiKana = void 0; const tonalres_1 = require("./tonalres"); const kanares_1 = require("../kana/kanares"); const collections_1 = require("./collections"); const tonesets_1 = require("./tonesets"); const combiningOverline = '\u0305'; const combiningDotBelow = '\u0323'; function handleCombiningDotBelowOverline(initial, medial) { const got = kanaInitials(mappingInitial.get(initial))(medial); if (got && got[0]) { if (initialsWithCombiningDotBelow.aspirated.includes(initial)) { if (freeSyllablesWithCombiningOverline.includes(initial + medial)) { return got[0] + combiningOverline + combiningDotBelow; } return got[0] + combiningDotBelow; } else if (initialsWithCombiningDotBelow.withoutADotOrOverline.includes(initial)) { return got[0]; } else if (initialsWithCombiningDotBelow.withAnOverline.includes(initial)) { if (freeSyllablesWithCombiningOverline.includes(initial + medial)) { return got[0] + combiningOverline; } return got[0]; } } return ''; } function getToneMarkForFourthEighth(final, tonalLen) { if (tonalLen == 0) { // 4th tone and 8th tone const kn = mappingLettersToPseudoEncoding.get(final.toString()); if (kn) { return kn[0]; } } return ''; } function getReplicatedKanaVowel(sounds, j, replica) { if ((j == 0 && sounds[0].name === tonalres_1.TonalSpellingTags.vowel && (sounds.length == 1 || (sounds.length == 2 && sounds[sounds.length - 1].name === tonalres_1.TonalSpellingTags.freeTone) || (sounds.length == 2 && sounds[sounds.length - 1].name === tonalres_1.TonalSpellingTags.nasalization))) || (sounds.length == 3 && sounds[sounds.length - 2].name === tonalres_1.TonalSpellingTags.nasalization && sounds[sounds.length - 1].name === tonalres_1.TonalSpellingTags.freeTone)) { // reduplicate the vowel for syllables without an initial // in case of a, e, // in case ax, ex. enn, // in case of ennx return replica; } else if ((sounds.length == 2 && sounds[0].name === tonalres_1.TonalSpellingTags.vowel && (sounds[1].toString() === tonalres_1.TonalLetterTags.h || sounds[1].toString() === tonalres_1.TonalLetterTags.hh)) || (sounds.length == 3 && sounds[0].name === tonalres_1.TonalSpellingTags.vowel && (sounds[1].toString() === tonalres_1.TonalLetterTags.h || sounds[1].toString() === tonalres_1.TonalLetterTags.hh) && sounds[2].name === tonalres_1.TonalSpellingTags.checkedTone) || (sounds.length == 3 && sounds[0].name === tonalres_1.TonalSpellingTags.vowel && sounds[1].name === tonalres_1.TonalSpellingTags.nasalization && (sounds[2].toString() === tonalres_1.TonalLetterTags.h || sounds[2].toString() === tonalres_1.TonalLetterTags.hh))) { // reduplicate the vowel for syllables without an initial // in case of ah, ehh // in case of ahy // in case of ennh, innh return getSmallKanaVowel(sounds[0].toString()); } return ''; } function getSmallKanaVowel(medial) { const got = kanares_1.otherKanas.get(medial); if (got && got[1]) { // get the small form of the vowel and append it return got[1]; } return ''; } function composeTaiKana(morphemes) { let kanaSeqs = []; let kanas = new Array(morphemes.length); let kanas4thToneWoArrow = ''; for (let i = 0; i < morphemes.length; i++) { const initl = morphemes[i].sounds.filter((it) => it.name === tonalres_1.TonalSpellingTags.initialConsonant); const mdls = morphemes[i].sounds.filter((it) => it.name === tonalres_1.TonalSpellingTags.vowel || it.name === tonalres_1.TonalSpellingTags.materLectionis); const nslFnl = morphemes[i].sounds.filter((it) => it.name === tonalres_1.TonalSpellingTags.nasalFinalConsonant); const stpFnl = morphemes[i].sounds.filter((it) => it.name === tonalres_1.TonalSpellingTags.stopFinalConsonant); const frTnl = morphemes[i].sounds.filter((it) => it.name === tonalres_1.TonalSpellingTags.freeTone); const chkTnl = morphemes[i].sounds.filter((it) => it.name === tonalres_1.TonalSpellingTags.checkedTone); const nslz = morphemes[i].sounds.filter((it) => it.name === tonalres_1.TonalSpellingTags.nasalization); const finalsForEToKanaIe = stpFnl .filter((it) => it.name === tonalres_1.TonalSpellingTags.stopFinalConsonant && finalsForEkIgEkkIggIng.includes(it.toString())) .concat(nslFnl.filter((it) => it.name === tonalres_1.TonalSpellingTags.nasalFinalConsonant && finalsForEkIgEkkIggIng.includes(it.toString()))); // initialize for this morpheme kanas[i] = ''; if (initl.length == 1) { if (mdls.length > 0) { for (let j = 0; j < mdls.length; j++) { if (voewlsIrEr.includes(mdls[j].toString())) { kanas[i] += handleCombiningDotBelowOverline(initl[0].toString(), mdls[j].toString()) + getKanaIrEr(mdls, stpFnl.length + nslFnl.length == 1); } else if (mdls[j].toString() === tonalres_1.TonalLetterTags.ur) { if (j == 0) { // if the preceding letter is an initial const initialKana = handleCombiningDotBelowOverline(initl[0].toString(), mdls[j].toString()); kanas[i] += initialKana; if (stpFnl.length == 1) { const kn = mappingMedialSmallForm.get(mdls[j].toString()); if (kn) kanas[i] += kn[1]; } else { const kn = mappingMedial.get(mdls[j].toString()); if (kn) kanas[i] += kn[1]; } } else { if (stpFnl.length == 1) { const kn = mappingMedialSmallForm.get(mdls[j].toString()); if (kn) kanas[i] += kn[1]; } else { const gotVowels = mappingMedial.get(mdls[j].toString()); if (gotVowels) kanas[i] += gotVowels[1]; } } } else { if (j > 0) { if (stpFnl.length == 1) { // more that one vowels. e.g. goehh kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else { if (j == 1 && mdls.length == 3) { kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else if (j == 1 && mdls.length == 2 && nslFnl.length == 1) { kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else { const kn = kanares_1.hiraganaKatakana.get(mdls[j].toString()); if (kn && kn[1]) kanas[i] += kn[1]; } } } else { // the first vowel. e.g. gehh, goehh kanas[i] += handleCombiningDotBelowOverline(initl[0].toString(), mdls[j].toString()); if (nslFnl.length == 0 && mdls.length == 1 && stpFnl.length == 0) { // open syllables with an initial const kn = kanares_1.hiraganaKatakana.get(mdls[j].toString()); if (kn && kn[1]) { // replicate the vowel and append it kanas[i] += kn[1]; } } else if (nslFnl.length == 0 && mdls.length == 1 && stpFnl.length == 1 && tonalres_1.neutralFinalConsonantsTonal.includes(stpFnl[0].toString())) { kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else if (mdls[j].toString() === tonalres_1.TonalLetterTags.e && mdls.length == 1 && nslz.length == 0 && stpFnl.length == 1 && finalsForEToKanaIe.length == 1 && !tonalres_1.neutralFinalConsonantsTonal.includes(stpFnl[0].toString())) { // replace initial syllabogram // remove initial syllabogram which has vowel e kanas[i] = ''; // add initial syllabogram which has vowel i const kn = handleCombiningDotBelowOverline(initl[0].toString(), tonalres_1.TonalLetterTags.i); if (kn) kanas[i] += kn; // in case of syllables -ek and -ekk with an initial. // an extra small kana e will be appended kanas[i] += getSmallKanaVowel(tonalres_1.TonalLetterTags.e); // console.log('medials>' + mdls + ', finals>' + stpFnl + ', ' + kanas); } } } } } else { // there is no medials } } if (initl.length == 0) { if (mdls.length > 0) { for (let j = 0; j < mdls.length; j++) { let got; if (j == 0 && mdls[j].toString() === tonalres_1.TonalLetterTags.o && mdls.length > 1) { // map o to wo got = kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.w + kanares_1.KanaLetterTags.o); } else { // map o to o got = kanares_1.hiraganaKatakana.get(mdls[j].toString()); } if (got) { if (j == 1 && mdls.length == 3) { // get small kana for 2nd medial kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else if (j == 1 && mdls.length == 2 && stpFnl.length == 1) { // get small kana for 2nd vowel kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else if (j == 1 && mdls.length == 2 && nslFnl.length == 1) { // get small kana for 2nd vowel kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else if (j == 2 && mdls.length == 3 && stpFnl.length == 1) { // get small kana for 3rd vowel kanas[i] += getSmallKanaVowel(mdls[j].toString()); } else if (mdls[j].toString() === tonalres_1.TonalLetterTags.e && mdls.length == 1 && nslz.length == 0 && stpFnl.length == 1 && finalsForEToKanaIe.length == 1) { // initial syllabogram const kn = kanares_1.hiraganaKatakana.get(tonalres_1.TonalLetterTags.i); if (kn) kanas[i] += kn[1]; // in case of syllables ek and ekk without an initial // an extra small kana e will be appended kanas[i] += getSmallKanaVowel(tonalres_1.TonalLetterTags.e); // console.log('medials>' + mdls + ', finals>' + stpFnl + ', ' + kanas); } else { kanas[i] += got[1]; kanas[i] += getReplicatedKanaVowel(morphemes[i].sounds, j, got[1]); } } else { if (mdls[j].toString() === tonalres_1.TonalLetterTags.er || mdls[j].toString() === tonalres_1.TonalLetterTags.ir) { const kn = mappingMedial.get(mdls[j].toString()); if (kn) { kanas[i] += kn[1] + combiningOverline; if (stpFnl.length == 1 && tonalres_1.neutralFinalConsonantsTonal.includes(stpFnl[0].toString())) { // in case of erh, use kanaIrOr to get one extra small kana kanas[i] += getKanaIrEr(mdls, stpFnl.length + nslFnl.length == 1); } else { // there replicated kana other than ir, or kanas[i] += getReplicatedKanaVowel(morphemes[i].sounds, i, kn[1] + combiningOverline); } } } else if (mdls[j].toString() === tonalres_1.TonalLetterTags.ur || mdls[j].toString() === tonalres_1.TonalLetterTags.er) { // if the preceding letter is not an initial const kn = mappingMedial.get(mdls[j].toString()); // in case of ur, iur. bypass urh, urhy, iurh, iurhy if (kn && stpFnl.length == 0) kanas[i] += kn[1]; if (stpFnl.length == 1) { // in case of urh, urhy if (kn && mdls.length == 1) kanas[i] += kn[1]; const sml = mappingMedialSmallForm.get(mdls[j].toString()); if (sml) kanas[i] += sml[1]; } else { if (mdls.length == 1) { if (kn) kanas[i] += getReplicatedKanaVowel(morphemes[i].sounds, j, kn[1]); } } } else if (tonalres_1.materLectionisTonal.includes(mdls[j].toString())) { // mater lectionis: m, n, ng. const kn = mappingMedial.get(mdls[j].toString()); if (kn) { kanas[i] += kn[1]; } } } } } } if (nslz.length == 1) { const tail = kanas[i].slice(1, kanas[i].length); if (initl.length == 1) { const kn = mappingNasalization.get(initl[0].toString() + mdls[0].toString()); if (kn) kanas[i] = kn + tail; } else { const kn = mappingNasalization.get(mdls[0].toString()); if (kn) kanas[i] = kn + tail; } } if (nslFnl.length == 1) { // syllable finals if (initl.length == 1 && mdls.length == 0) { // there is no medials const kn = kanaInitials(mappingInitial.get(initl[0].toString()))(nslFnl[0].toString()); if (kn && kn[0]) { kanas[i] += handleCombiningDotBelowOverline(initl[0].toString(), nslFnl[0].toString()); } } let kn; if (stpFnl.length > 0) kn = mappingSmallNasalFinal.get(nslFnl[0].toString()); else kn = mappingNasalFinal.get(nslFnl[0].toString()); if (kn && kn[1]) kanas[i] += kn[1]; } if (stpFnl.length == 1) { // syllable finals const kn = mappingStopFinal.get(stpFnl[0].toString()); if (kn && kn[1]) { // stop finals p, t, k, pp, tt, kk kanas[i] += kn[1]; } if (Object.values(collections_1.fourthFinalConsonants).includes(stpFnl[0].toString())) { kanas4thToneWoArrow = kanas[i]; } kanas[i] += getToneMarkForFourthEighth(stpFnl[0].toString(), chkTnl.length); } if (frTnl.length == 1) { kanas[i] += mappingLettersToPseudoEncoding.get(frTnl[0].toString()); } if (chkTnl.length == 1) { kanas[i] += mappingLettersToPseudoEncoding.get(chkTnl[0].toString()); } } kanaSeqs.push(kanas.join('')); if (kanas4thToneWoArrow.length > 0 && morphemes.length == 1) { kanaSeqs.push(kanas4thToneWoArrow); } return kanaSeqs; } exports.composeTaiKana = composeTaiKana; const kanaInitials = function (map) { return function (following) { if (following) { if (map && map.has(following)) { const got = map.get(following); if (got && got[1]) { return [got[1]]; } } } else { if (map) { /* const kanas = Array.from(map.values()); const dupes = Array.from(kanas.map(it => (it ? it[1] : ''))); const dedupes = dupes.reduce(function ( accumulator: string[], curr: string ) { if (accumulator.filter(it => it === curr).length == 0) { accumulator.push(curr); } return accumulator; }, []); return dedupes; */ } } return []; }; }; const getKanaIrEr = function (vowels, hasOneFinal) { if (vowels.length == 1) { const kn = mappingMedial.get(vowels[0].toString()); if (kn) { if (hasOneFinal) { const sml = mappingMedialSmallForm.get(vowels[0].toString()); if (sml) { return sml[1] + combiningOverline; } } return kn[1] + combiningOverline; } } else if (vowels.length == 2) { // return small form const kn = mappingMedialSmallForm.get(vowels[0].toString()); if (kn) { return kn[1] + combiningOverline; } } return ''; }; const freeSyllablesWithCombiningOverline = [ tonalres_1.TonalLetterTags.ch.toString() + tonalres_1.TonalLetterTags.a.toString(), tonalres_1.TonalLetterTags.c.toString() + tonalres_1.TonalLetterTags.a.toString(), tonalres_1.TonalLetterTags.ch.toString() + tonalres_1.TonalLetterTags.e.toString(), tonalres_1.TonalLetterTags.c.toString() + tonalres_1.TonalLetterTags.e.toString(), tonalres_1.TonalLetterTags.ch.toString() + tonalres_1.TonalLetterTags.o.toString(), tonalres_1.TonalLetterTags.ch.toString() + tonalres_1.TonalLetterTags.er.toString(), tonalres_1.TonalLetterTags.ch.toString() + tonalres_1.TonalLetterTags.ur.toString(), tonalres_1.TonalLetterTags.c.toString() + tonalres_1.TonalLetterTags.o.toString(), tonalres_1.TonalLetterTags.t.toString() + tonalres_1.TonalLetterTags.i.toString(), tonalres_1.TonalLetterTags.th.toString() + tonalres_1.TonalLetterTags.i.toString(), tonalres_1.TonalLetterTags.t.toString() + tonalres_1.TonalLetterTags.u.toString(), tonalres_1.TonalLetterTags.th.toString() + tonalres_1.TonalLetterTags.u.toString(), tonalres_1.TonalLetterTags.t.toString() + tonalres_1.TonalLetterTags.ng.toString(), tonalres_1.TonalLetterTags.th.toString() + tonalres_1.TonalLetterTags.ng.toString(), tonalres_1.TonalLetterTags.t.toString() + tonalres_1.TonalLetterTags.ir.toString(), tonalres_1.TonalLetterTags.th.toString() + tonalres_1.TonalLetterTags.ir.toString(), ]; const initialsWithCombiningDotBelow = { // whether the dot should be combined aspirated: [ // with a dot tonalres_1.TonalLetterTags.kh.toString(), tonalres_1.TonalLetterTags.c.toString(), tonalres_1.TonalLetterTags.ph.toString(), tonalres_1.TonalLetterTags.th.toString(), ], withoutADotOrOverline: [ tonalres_1.TonalLetterTags.k.toString(), tonalres_1.TonalLetterTags.g.toString(), tonalres_1.TonalLetterTags.b.toString(), tonalres_1.TonalLetterTags.p.toString(), tonalres_1.TonalLetterTags.j.toString(), tonalres_1.TonalLetterTags.l.toString(), tonalres_1.TonalLetterTags.h.toString(), tonalres_1.TonalLetterTags.s.toString(), tonalres_1.TonalLetterTags.m.toString(), tonalres_1.TonalLetterTags.n.toString(), tonalres_1.TonalLetterTags.ng.toString(), ], withAnOverline: [ tonalres_1.TonalLetterTags.ch.toString(), tonalres_1.TonalLetterTags.c.toString(), tonalres_1.TonalLetterTags.t.toString(), ], }; // includes mater lectionis const mappingMedial = new Map() .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.w + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ea, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.m, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.n, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hatsuon.get(kanares_1.KanaLetterTags.n)); const voewlsIrEr = [ tonalres_1.TonalLetterTags.ir.toString(), tonalres_1.TonalLetterTags.er.toString(), ]; const mappingMedialSmallForm = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.i, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.e, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.er, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.w + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.m, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.n, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.n)); const mappingLettersToPseudoEncoding = new Map() .set(tonalres_1.TonalLetterTags.f, tonesets_1.PseudoUnicodeEncoding.first) .set(tonalres_1.TonalLetterTags.y, tonesets_1.PseudoUnicodeEncoding.second) .set(tonalres_1.TonalLetterTags.w, tonesets_1.PseudoUnicodeEncoding.third) .set(tonalres_1.TonalLetterTags.x, tonesets_1.PseudoUnicodeEncoding.fifth) .set(tonalres_1.TonalLetterTags.zx, tonesets_1.PseudoUnicodeEncoding.sixth) .set(tonalres_1.TonalLetterTags.z, tonesets_1.PseudoUnicodeEncoding.seventh) .set(tonalres_1.TonalLetterTags.xx, tonesets_1.PseudoUnicodeEncoding.ninth) .set(tonalres_1.TonalLetterTags.p, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.t, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.k, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.h, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.b, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.g, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.j, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.l, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.s, tonesets_1.PseudoUnicodeEncoding.fourth) .set(tonalres_1.TonalLetterTags.pp, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.tt, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.kk, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.hh, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.bb, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.gg, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.jj, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.ll, tonesets_1.PseudoUnicodeEncoding.eighth) .set(tonalres_1.TonalLetterTags.ss, tonesets_1.PseudoUnicodeEncoding.eighth); const mappingStopFinal = new Map() .set(tonalres_1.TonalLetterTags.p, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.t, kanares_1.kogakimoji.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.k, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.b, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.g, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.j, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.j + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.l, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.s, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.pp, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.tt, kanares_1.kogakimoji.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.kk, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.bb, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.gg, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.jj, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.j + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ll, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ss, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.u)); const mappingNasalization = new Map() .set(tonalres_1.TonalLetterTags.a, '㋐') .set(tonalres_1.TonalLetterTags.i, '㋑') .set(tonalres_1.TonalLetterTags.ir, '㋒') .set(tonalres_1.TonalLetterTags.u, '㋒') .set(tonalres_1.TonalLetterTags.e, '㋓') .set(tonalres_1.TonalLetterTags.o, '㋔') .set(tonalres_1.TonalLetterTags.kh + tonalres_1.TonalLetterTags.a, '㋕') .set(tonalres_1.TonalLetterTags.kh + tonalres_1.TonalLetterTags.i, '㋖') .set(tonalres_1.TonalLetterTags.kh + tonalres_1.TonalLetterTags.u, '㋗') .set(tonalres_1.TonalLetterTags.kh + tonalres_1.TonalLetterTags.e, '㋘') .set(tonalres_1.TonalLetterTags.kh + tonalres_1.TonalLetterTags.o, '㋙') .set(tonalres_1.TonalLetterTags.s + tonalres_1.TonalLetterTags.a, '㋚') .set(tonalres_1.TonalLetterTags.s + tonalres_1.TonalLetterTags.i, '㋛') .set(tonalres_1.TonalLetterTags.s + tonalres_1.TonalLetterTags.ir, '㋜') .set(tonalres_1.TonalLetterTags.s + tonalres_1.TonalLetterTags.u, '㋜') .set(tonalres_1.TonalLetterTags.s + tonalres_1.TonalLetterTags.e, '㋝') .set(tonalres_1.TonalLetterTags.s + tonalres_1.TonalLetterTags.o, '㋞') .set(tonalres_1.TonalLetterTags.c + tonalres_1.TonalLetterTags.a, '㋚') .set(tonalres_1.TonalLetterTags.c + tonalres_1.TonalLetterTags.i, '㋠') .set(tonalres_1.TonalLetterTags.c + tonalres_1.TonalLetterTags.ir, '㋡') .set(tonalres_1.TonalLetterTags.c + tonalres_1.TonalLetterTags.u, '㋡') .set(tonalres_1.TonalLetterTags.c + tonalres_1.TonalLetterTags.e, '㋝') .set(tonalres_1.TonalLetterTags.c + tonalres_1.TonalLetterTags.o, '㋞') .set(tonalres_1.TonalLetterTags.ch + tonalres_1.TonalLetterTags.a, '㋚') .set(tonalres_1.TonalLetterTags.ch + tonalres_1.TonalLetterTags.i, '㋠') .set(tonalres_1.TonalLetterTags.ch + tonalres_1.TonalLetterTags.ir, '㋡') .set(tonalres_1.TonalLetterTags.ch + tonalres_1.TonalLetterTags.u, '㋡') .set(tonalres_1.TonalLetterTags.ch + tonalres_1.TonalLetterTags.e, '㋝') .set(tonalres_1.TonalLetterTags.ch + tonalres_1.TonalLetterTags.o, '㋞') .set(tonalres_1.TonalLetterTags.t + tonalres_1.TonalLetterTags.a, '㋟') .set(tonalres_1.TonalLetterTags.t + tonalres_1.TonalLetterTags.i, '㋠') .set(tonalres_1.TonalLetterTags.t + tonalres_1.TonalLetterTags.u, '㋡') .set(tonalres_1.TonalLetterTags.t + tonalres_1.TonalLetterTags.e, '㋢') .set(tonalres_1.TonalLetterTags.t + tonalres_1.TonalLetterTags.o, '㋣') .set(tonalres_1.TonalLetterTags.j + tonalres_1.TonalLetterTags.i, '㋛' + '\u{3099}') // ㋛゙ .set(tonalres_1.TonalLetterTags.ph + tonalres_1.TonalLetterTags.a, '㋩' + '\u{309a}') // ㋩゚ .set(tonalres_1.TonalLetterTags.ph + tonalres_1.TonalLetterTags.i, '㋪' + '\u{309a}') // ㋪゚ .set(tonalres_1.TonalLetterTags.ph + tonalres_1.TonalLetterTags.u, '㋫' + '\u{309a}') // ㋫゚ .set(tonalres_1.TonalLetterTags.ph + tonalres_1.TonalLetterTags.e, '㋬' + '\u{309a}') // ㋬゚ .set(tonalres_1.TonalLetterTags.ph + tonalres_1.TonalLetterTags.o, '㋭' + '\u{309a}') // ㋭゚ .set(tonalres_1.TonalLetterTags.k + tonalres_1.TonalLetterTags.a, '㋕') .set(tonalres_1.TonalLetterTags.k + tonalres_1.TonalLetterTags.i, '㋖') .set(tonalres_1.TonalLetterTags.k + tonalres_1.TonalLetterTags.ir, '㋗') .set(tonalres_1.TonalLetterTags.k + tonalres_1.TonalLetterTags.u, '㋗') .set(tonalres_1.TonalLetterTags.k + tonalres_1.TonalLetterTags.e, '㋘') .set(tonalres_1.TonalLetterTags.k + tonalres_1.TonalLetterTags.o, '㋙') .set(tonalres_1.TonalLetterTags.h + tonalres_1.TonalLetterTags.a, '㋩') .set(tonalres_1.TonalLetterTags.h + tonalres_1.TonalLetterTags.i, '㋪') .set(tonalres_1.TonalLetterTags.h + tonalres_1.TonalLetterTags.ir, '㋫') .set(tonalres_1.TonalLetterTags.h + tonalres_1.TonalLetterTags.u, '㋫') .set(tonalres_1.TonalLetterTags.h + tonalres_1.TonalLetterTags.e, '㋬') .set(tonalres_1.TonalLetterTags.h + tonalres_1.TonalLetterTags.o, '㋭') .set(tonalres_1.TonalLetterTags.th + tonalres_1.TonalLetterTags.a, '㋟') .set(tonalres_1.TonalLetterTags.th + tonalres_1.TonalLetterTags.i, '㋠') .set(tonalres_1.TonalLetterTags.th + tonalres_1.TonalLetterTags.u, '㋡') .set(tonalres_1.TonalLetterTags.th + tonalres_1.TonalLetterTags.e, '㋢') .set(tonalres_1.TonalLetterTags.th + tonalres_1.TonalLetterTags.o, '㋣') .set(tonalres_1.TonalLetterTags.p + tonalres_1.TonalLetterTags.a, '㋩' + '\u{309a}') // ㋩゚ .set(tonalres_1.TonalLetterTags.p + tonalres_1.TonalLetterTags.i, '㋪' + '\u{309a}') // ㋪゚ .set(tonalres_1.TonalLetterTags.p + tonalres_1.TonalLetterTags.u, '㋫' + '\u{309a}') // ㋫゚ .set(tonalres_1.TonalLetterTags.p + tonalres_1.TonalLetterTags.e, '㋬' + '\u{309a}') // ㋬゚ .set(tonalres_1.TonalLetterTags.p + tonalres_1.TonalLetterTags.o, '㋭' + '\u{309a}'); // ㋭゚ const finalsForEkIgEkkIggIng = [ tonalres_1.TonalLetterTags.k.toString(), tonalres_1.TonalLetterTags.g.toString(), tonalres_1.TonalLetterTags.kk.toString(), tonalres_1.TonalLetterTags.gg.toString(), tonalres_1.TonalLetterTags.ng.toString(), ]; const mappingNasalFinal = new Map() .set(tonalres_1.TonalLetterTags.m, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.n, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hatsuon.get(kanares_1.KanaLetterTags.n)); const mappingSmallNasalFinal = new Map() .set(tonalres_1.TonalLetterTags.m, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.n, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.otherKanas.get(kanares_1.KanaLetterTags.n)); const mappingInitialB = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.b + kanares_1.KanaLetterTags.o)); const mappingInitialC = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ch + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.m, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)); const mappingInitialG = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.g + kanares_1.KanaLetterTags.o)); const mappingInitialH = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.h + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.h + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.h + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.f + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.m, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.f + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.h + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.f + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.f + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.h + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.h + kanares_1.KanaLetterTags.o)); const mappingInitialJ = new Map() .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.z + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.j + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.z + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.z + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.z + kanares_1.KanaLetterTags.u)); const mappingInitialK = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.k + kanares_1.KanaLetterTags.u)); const mappingInitialL = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.r + kanares_1.KanaLetterTags.u)); const mappingInitialM = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.m + kanares_1.KanaLetterTags.u)); const mappingInitialN = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.n + kanares_1.KanaLetterTags.u)); const mappingInitialNG = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.special.get(kanares_1.KanaLetterTags.ng + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.i, kanares_1.special.get(kanares_1.KanaLetterTags.ng + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.u, kanares_1.special.get(kanares_1.KanaLetterTags.ng + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.e, kanares_1.special.get(kanares_1.KanaLetterTags.ng + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.o, kanares_1.special.get(kanares_1.KanaLetterTags.ng + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.special.get(kanares_1.KanaLetterTags.ng + kanares_1.KanaLetterTags.u)); const mappingInitialP = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.p + kanares_1.KanaLetterTags.o)); const mappingInitialS = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.sh + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.m, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.s + kanares_1.KanaLetterTags.u)); const mappingInitialT = new Map() .set(tonalres_1.TonalLetterTags.a, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.t + kanares_1.KanaLetterTags.a)) .set(tonalres_1.TonalLetterTags.e, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.t + kanares_1.KanaLetterTags.e)) .set(tonalres_1.TonalLetterTags.i, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ch + kanares_1.KanaLetterTags.i)) .set(tonalres_1.TonalLetterTags.o, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.t + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.u, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ng, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ir, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.ts + kanares_1.KanaLetterTags.u)) .set(tonalres_1.TonalLetterTags.ur, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.t + kanares_1.KanaLetterTags.o)) .set(tonalres_1.TonalLetterTags.er, kanares_1.hiraganaKatakana.get(kanares_1.KanaLetterTags.t + kanares_1.KanaLetterTags.o)); const mappingInitial = new Map() .set(tonalres_1.TonalLetterTags.b, mappingInitialB) .set(tonalres_1.TonalLetterTags.c, mappingInitialC) .set(tonalres_1.TonalLetterTags.ch, mappingInitialC) .set(tonalres_1.TonalLetterTags.t, mappingInitialT) .set(tonalres_1.TonalLetterTags.g, mappingInitialG) .set(tonalres_1.TonalLetterTags.h, mappingInitialH) .set(tonalres_1.TonalLetterTags.j, mappingInitialJ) .set(tonalres_1.TonalLetterTags.kh, mappingInitialK) .set(tonalres_1.TonalLetterTags.l, mappingInitialL) .set(tonalres_1.TonalLetterTags.m, mappingInitialM) .set(tonalres_1.TonalLetterTags.n, mappingInitialN) .set(tonalres_1.TonalLetterTags.ng, mappingInitialNG) .set(tonalres_1.TonalLetterTags.ph, mappingInitialP) .set(tonalres_1.TonalLetterTags.k, mappingInitialK) .set(tonalres_1.TonalLetterTags.s, mappingInitialS) .set(tonalres_1.TonalLetterTags.th, mappingInitialT) .set(tonalres_1.TonalLetterTags.p, mappingInitialP); //# sourceMappingURL=taikana.js.map